'Approved' GuideML DTD
Created | Updated Apr 9, 2004
<!--
THIS IS NOT AN OFFICIAL OR APPROVED PRODUCT OF THE DNA TEAM AT BBC
'Approved' GuideML DTD
Namespace = http://www.bbc.co.uk/dna/guideml
This DTD module is identified by the PUBLIC and SYSTEM identifiers:
PUBLIC "-//DNA//DTD GuideML v1.0//EN"
SYSTEM "http://www.bbc.co.uk/dna/guideml.dtd"
$Revision: 1.2 $
$Date: 2003/01/28 03:15:27 $
-->
<!--================ Character mnemonic entities =========================-->
<!-- Taken from HTML 4 -->
<!ENTITY % HTMLlat1 PUBLIC
"-//W3C//ENTITIES Latin 1 for XHTML//EN"
"xhtml-lat1.ent">
%HTMLlat1;
<!ENTITY % HTMLsymbol PUBLIC
"-//W3C//ENTITIES Symbols for XHTML//EN"
"xhtml-symbol.ent">
%HTMLsymbol;
<!ENTITY % HTMLspecial PUBLIC
"-//W3C//ENTITIES Special for XHTML//EN"
"xhtml-special.ent">
%HTMLspecial;
<!--================== Letter Case Flexibility ===========================-->
<!-- Default is uppercase (unfortunately) -->
<!ENTITY % uppercase "INCLUDE">
<!ENTITY % lowercase "IGNORE">
<![%uppercase;[
<!ENTITY % B "B">
<!ENTITY % BLOCKQUOTE "BLOCKQUOTE">
<!ENTITY % BODY "BODY">
<!ENTITY % BR "BR">
<!ENTITY % CODE "CODE">
<!ENTITY % ENTITY "ENTITY">
<!ENTITY % FOOTNOTE "FOOTNOTE">
<!ENTITY % GUIDE "GUIDE">
<!ENTITY % HEADER "HEADER">
<!ENTITY % HR "HR">
<!ENTITY % I "I">
<!ENTITY % LINK "LINK">
<!ENTITY % OL "OL">
<!ENTITY % LI "LI">
<!ENTITY % P "P">
<!ENTITY % PICTURE "PICTURE">
<!ENTITY % PRE "PRE">
<!ENTITY % REFERENCES "REFERENCES">
<!ENTITY % SUB "SUB">
<!ENTITY % SUBHEADER "SUBHEADER">
<!ENTITY % SUP "SUP">
<!ENTITY % TABLE "TABLE">
<!ENTITY % TR "TR">
<!ENTITY % TH "TH">
<!ENTITY % TD "TD">
<!ENTITY % CAPTION "CAPTION">
<!ENTITY % UL "UL">
<!-- Now for the attributes -->
<!ENTITY % ALIGN "ALIGN">
<!ENTITY % ALT "ALT">
<!ENTITY % BIO "BIO">
<!ENTITY % BLOB "BLOB">
<!ENTITY % BORDER "BORDER">
<!ENTITY % COLSPAN "COLSPAN">
<!ENTITY % EMBED "EMBED">
<!ENTITY % H2G2 "H2G2">
<!ENTITY % HREF "HREF">
<!ENTITY % NAME "NAME">
<!ENTITY % POPUP "POPUP">
<!ENTITY % ROWSPAN "ROWSPAN">
<!ENTITY % TITLE "TITLE">
<!ENTITY % TYPE "TYPE">
<!ENTITY % VALIGN "VALIGN">
<!-- And attribute values -->
<!ENTITY % LEFT "LEFT">
<!ENTITY % CENTER "CENTER">
<!ENTITY % RIGHT "RIGHT">
<!ENTITY % FREE "FREE">
<!ENTITY % TOP "TOP">
<!ENTITY % MIDDLE "MIDDLE">
<!ENTITY % BOTTOM "BOTTOM">
]]>
<![%lowercase;[
<!ENTITY % B "b">
<!ENTITY % BLOCKQUOTE "blockquote">
<!ENTITY % BODY "body">
<!ENTITY % BR "br">
<!ENTITY % CODE "code">
<!ENTITY % ENTITY "entity">
<!ENTITY % FOOTNOTE "footnote">
<!ENTITY % GUIDE "guide">
<!ENTITY % HEADER "header">
<!ENTITY % HR "hr">
<!ENTITY % I "i">
<!ENTITY % LINK "link">
<!ENTITY % OL "ol">
<!ENTITY % LI "li">
<!ENTITY % P "p">
<!ENTITY % PICTURE "picture">
<!ENTITY % PRE "pre">
<!ENTITY % REFERENCES "references">
<!ENTITY % SUB "sub">
<!ENTITY % SUBHEADER "subheader">
<!ENTITY % SUP "sup">
<!ENTITY % TABLE "table">
<!ENTITY % TR "tr">
<!ENTITY % TH "th">
<!ENTITY % TD "td">
<!ENTITY % CAPTION "caption">
<!ENTITY % UL "ul">
<!-- Now for the attributes -->
<!ENTITY % ALIGN "align">
<!ENTITY % ALT "alt">
<!ENTITY % BIO "bio">
<!ENTITY % BLOB "blob">
<!ENTITY % BORDER "border">
<!ENTITY % COLSPAN "colspan">
<!ENTITY % EMBED "embed">
<!ENTITY % H2G2 "h2g2">
<!ENTITY % HREF "href">
<!ENTITY % NAME "name">
<!ENTITY % POPUP "popup">
<!ENTITY % ROWSPAN "rowspan">
<!ENTITY % TITLE "title">
<!ENTITY % TYPE "type">
<!ENTITY % VALIGN "valign">
<!-- And attribute values -->
<!ENTITY % LEFT "left">
<!ENTITY % CENTER "center">
<!ENTITY % RIGHT "right">
<!ENTITY % FREE "free">
<!ENTITY % TOP "top">
<!ENTITY % MIDDLE "middle">
<!ENTITY % BOTTOM "bottom">
]]>
<!--================== Imported Names ====================================-->
<!ENTITY % Uri "CDATA">
<!-- a Uniform Resource Identifier, see [RFC2396] -->
<!ENTITY % Switch "(0 | 1)">
<!-- a yes/no switch; "0" is no, "1" is yes -->
<!--=================== Text Elements ====================================-->
<!ENTITY % inline "%B; | %BR; | %ENTITY; | %FOOTNOTE; | %I; | %LINK; |
%SUB; | %SUP;">
<!--================== Block level elements ==============================-->
<!ENTITY % block "%HEADER; | %SUBHEADER; | %BLOCKQUOTE; | %CODE; | %HR; |
%OL; | %P; | %PRE; | %UL; | %PICTURE; | %TABLE;">
<!--================== Content models for exclusions =====================-->
<!ENTITY % pre.content
"(#PCDATA | %B; | %BR; | %ENTITY; | %FOOTNOTE; | %I; | %LINK;)*">
<!--================ Document Structure ==================================-->
<!-- the namespace URI designates the document profile -->
<!ELEMENT %GUIDE; (%BODY;, (%REFERENCES;)?)>
<!ATTLIST %GUIDE;
xmlns %Uri; #FIXED "http://www.bbc.co.uk/dna/guideml"
>
<!--=================== Document Body ====================================-->
<!ELEMENT %BODY; (%block;)*>
<!--=================== Paragraphs =======================================-->
<!ELEMENT %P; (#PCDATA | %inline;)*>
<!ATTLIST %P;
%ALIGN; (%LEFT;|%CENTER;|%RIGHT;) #IMPLIED
>
<!--=================== Headings =========================================-->
<!--
There are two levels of headings: header and subheader.
-->
<!ELEMENT %HEADER; (#PCDATA | %inline;)*>
<!ELEMENT %SUBHEADER; (#PCDATA | %inline;)*>
<!--=================== Lists ============================================-->
<!-- Unordered list -->
<!ELEMENT %UL; (%LI;)+>
<!-- Ordered (numbered) list -->
<!ELEMENT %OL; (%LI;)+>
<!-- list item -->
<!ELEMENT %LI; (#PCDATA | %inline; | %P;)*>
<!--=================== Horizontal Rule ==================================-->
<!ELEMENT %HR; EMPTY>
<!--=================== Preformatted Text ================================-->
<!-- content is %inline; excluding "sub|sup" -->
<!ELEMENT %PRE; %pre.content;>
<!--=================== Block-like Quotes ================================-->
<!ELEMENT %BLOCKQUOTE; (#PCDATA | %inline;)*>
<!--================== The Anchor Element ================================-->
<!ELEMENT %LINK; (#PCDATA | %inline;)*>
<!ATTLIST %LINK;
%H2G2; CDATA #IMPLIED
%BIO; CDATA #IMPLIED
%HREF; %Uri; #IMPLIED
%TITLE; CDATA #IMPLIED
%POPUP; %Switch; #IMPLIED
>
<!--===================== Inline Elements ================================-->
<!ELEMENT %B; (#PCDATA | %inline;)*> <!-- bold font -->
<!ELEMENT %BR; EMPTY> <!-- forced line break -->
<!ELEMENT %CODE; (#PCDATA | %inline;)*> <!-- program code -->
<!ELEMENT %ENTITY; EMPTY> <!-- named or numbered entity -->
<!ATTLIST %ENTITY;
%TYPE; CDATA #REQUIRED
>
<!ELEMENT %FOOTNOTE; (#PCDATA | %inline;)*> <!-- footnote insertion -->
<!ELEMENT %I; (#PCDATA | %inline;)*> <!-- italic font -->
<!ELEMENT %SUB; (#PCDATA | %inline;)*> <!-- subscript -->
<!ELEMENT %SUP; (#PCDATA | %inline;)*> <!-- superscript -->
<!--=================== Images ===========================================-->
<!ELEMENT %PICTURE; (#PCDATA | %inline;)*>
<!ATTLIST %PICTURE;
%BLOB; CDATA #IMPLIED
%NAME; CDATA #IMPLIED
%BORDER; %Switch; #IMPLIED
%ALT; CDATA #REQUIRED
%EMBED; (%LEFT;|%CENTER;|%RIGHT;|%FREE;) #IMPLIED
>
<!--======================= Tables =======================================-->
<!-- Derived from IETF HTML table standard, see [RFC1942] -->
<!ENTITY % cellhalign
"%ALIGN; (%LEFT;|%CENTER;|%RIGHT;) #IMPLIED"
>
<!-- vertical alignment attributes for cell contents -->
<!ENTITY % cellvalign
"%VALIGN; (%TOP;|%MIDDLE;|%BOTTOM;) #IMPLIED"
>
<!ELEMENT %TABLE; ((%CAPTION;)?, (%TR;)+)>
<!ATTLIST %TABLE;
%BORDER; %Switch; #IMPLIED>
<!ELEMENT %TH; (#PCDATA | %inline;)*>
<!ATTLIST %TH;
%cellhalign;
%cellvalign;
%COLSPAN; NMTOKEN "1"
%ROWSPAN; NMTOKEN "1"
>
<!ELEMENT %TR; ((%TH;)+|(%TD;)+)>
<!ELEMENT %TD; (#PCDATA | %inline;)*>
<!ATTLIST %TD;
%cellhalign;
%cellvalign;
%COLSPAN; NMTOKEN "1"
%ROWSPAN; NMTOKEN "1"
>
<!ELEMENT %CAPTION; (#PCDATA | %inline;)*>
<!--======================= References ===================================-->
<!ELEMENT %REFERENCES; (%LINK;)+>