<!-- Bill DTD  -->
<!ENTITY % ModText "StrikeText | AddText">
<!ENTITY % Format "SameLine | Bold | TotalLine | HardSpace | DotFill | SpaceFill 
	| DashFill | Tab | Subscript | Superscript | Italic">
<!ENTITY % ParaModel "ShortTitle | AccountNum | Amount | %ModText; | %Format;">
<!ENTITY % ParaObj "Para | table | PreformatPara | NewPage | NoPageBreak | RightPara | CenterPara | SamePage | SkipLine">
<!ENTITY % SourceCap "((Source | Caption), (Source | Caption | SkipLine)*)?">
<!ENTITY % ILCSCap "ILCSRef | Caption | SkipLine">
<!ENTITY % SectionModel "(%ILCSCap; )* ,  (SectionNum , SectionHeading?,  (%ParaObj; )* ,  (%SourceCap; ) )+ ">
<!ENTITY % ArticleModel "(%ILCSCap; )* ,  ((ArticleNum, (%ParaObj; )* ) ,  (%SourceCap; ))+ ">
<!ELEMENT Bill  (ABR , IntroDate? , Sponsor* , Synopsis , NoteStamp* , BillDocName? , 
	DraftDocName , BillTitle , Preamble? , BillEnact , BillBody ,  ( %ParaObj; | Caption | BillIndex )* ) >
<!ELEMENT BillBody  ( Caption | BillArticleHead | BillNewSection 
		| BillAmendSection | BillRepealSection | NFSSection
		| EffDateSection | NewPage | BillChunk | LinkFile )* >
<!ELEMENT BillChunk  ( Caption | BillArticleHead | BillNewSection 
		| BillAmendSection | BillRepealSection
		| NFSSection | EffDateSection | NewPage )* >
<!ATTLIST BillChunk description CDATA #IMPLIED>
<!ELEMENT ABR  (#PCDATA | Prompt )*>
<!ELEMENT AccountNum  (#PCDATA | Prompt | %ModText; | %Format; )*>
<!ELEMENT ActLongTitle  (#PCDATA | Prompt | %ModText; | %Format; )*>
<!ELEMENT AddText  (#PCDATA | Prompt | %Format; )*>
<!ELEMENT AmendSectionBody  (Caption | ILCSTitle | ILCSArticleHead | ILCSSec )*>
<!ELEMENT Amount  (#PCDATA | Prompt | %ModText; | %Format; )*>
<!ATTLIST Amount Sum
	 (Start | Start_1 | Start_2 | Start_3 | Start_4 |  
	  Amount | Exclude | Total | TotSub_1 | TotSub_2 |  
	  TotSub_3 | TotSub_4) "Amount">
<!ELEMENT ArticleNum  (#PCDATA | Prompt | %ModText; | %Format; )*>
<!ELEMENT BillAmendSection  (NewPage? , IntroductoryClause , AmendSectionBody? )>
<!ELEMENT BillArticleHead  ( %ArticleModel; )>
<!ELEMENT BillDocName  (#PCDATA | Prompt )*>
<!ELEMENT BillEnact  (#PCDATA | Prompt | Tab )*>
<!ELEMENT BillIndex  (ILCSRow | SkipLine | NoPageBreak )+>
<!ELEMENT BillNewSection  ( %SectionModel; )>
<!ELEMENT BillRepealSection ( %SectionModel; )>
<!ELEMENT BillTitle  (#PCDATA | Prompt | Tab )*>
<!ELEMENT Bold  (#PCDATA | Prompt | %Format; )*>
<!ELEMENT Caption  (#PCDATA | Prompt | Suppress | %Format; )*>
<!ATTLIST Caption  Type CDATA  'Comment' >
<!ELEMENT CenterPara  (#PCDATA | Prompt | %ParaModel; )*>
<!ATTLIST CenterPara  Indent   (0 | 1 | 2 | 3 | 4 | 5 )  #IMPLIED >
<!ELEMENT DashFill EMPTY>
<!ELEMENT DotFill EMPTY>
<!ELEMENT DraftDocName  (#PCDATA | Prompt )*>
<!ELEMENT EffDateSection  ( %SectionModel; )>
<!ELEMENT ILCSArticleHead  ( %ArticleModel; )>
<!ELEMENT ILCSCite  (#PCDATA | Prompt )*>
<!ELEMENT ILCSRef  (ILCSRow | SkipLine | NoPageBreak )+>
<!ELEMENT ILCSRow  (ILCSCite , StatInfo  )>
<!ELEMENT ILCSSec  ( %SectionModel; )>
<!ELEMENT ILCSTitle  ( (%ILCSCap; )* , ActLongTitle ,  (%ParaObj; | Source | Caption )* )>
<!ELEMENT IntroDate  (#PCDATA | Prompt )*>
<!ELEMENT IntroductoryClause  ( %SectionModel; )>
<!ELEMENT Italic  (#PCDATA | Prompt | %Format; )*>
<!ELEMENT HardSpace EMPTY>
<!ELEMENT LinkDesc (#PCDATA | Prompt)*>
<!ELEMENT LinkFile (LinkDesc, LinkURL)>
<!ELEMENT LinkURL (#PCDATA | Prompt)*>
<!ELEMENT NewPage EMPTY>
<!ELEMENT NFSSection  ( %SectionModel; )>
<!ELEMENT NoPageBreak EMPTY>
<!ELEMENT NoteStamp  (#PCDATA | Prompt )*>
<!ELEMENT Para  (#PCDATA | Prompt | %ParaModel; )*>
<!ATTLIST Para  Indent   (0 | 1 | 2 | 3 | 4 | 5 )  #IMPLIED >
<!ELEMENT Preamble  (%ParaObj; )*>
<!ELEMENT PreformatPara  (#PCDATA | Prompt | %ParaModel; )*>
<!ATTLIST PreformatPara  Indent   (0 | 1 | 2 | 3 | 4 | 5 )  #IMPLIED >
<!ELEMENT Prompt  (#PCDATA )>
<!ELEMENT RightPara  (#PCDATA | Prompt | %ParaModel; )*>
<!ATTLIST RightPara  Indent   (0 | 1 | 2 | 3 | 4 | 5 )  #IMPLIED >
<!ELEMENT SameLine  (#PCDATA | Prompt | %Format; )*>
<!ELEMENT SamePage  (%ParaObj; )*>
<!ELEMENT SectionHeading  (#PCDATA | Prompt | %ModText; | %Format; )*>
<!ELEMENT SectionNum  (#PCDATA | Prompt | %ModText; | %Format; )*>
<!ELEMENT ShortTitle  (#PCDATA | Prompt | %ModText; | %Format; )*>
<!ELEMENT SkipLine EMPTY>
<!ELEMENT Source  (#PCDATA | Prompt | Suppress | %Format; )*>
<!ELEMENT SpaceFill EMPTY>
<!ELEMENT Sponsor  (#PCDATA | Prompt )*>
<!ELEMENT StatInfo  (#PCDATA | Prompt )*>
<!ELEMENT StrikeText  (#PCDATA | Prompt | %Format; )*>
<!ELEMENT Subscript  (#PCDATA | Prompt | %Format; )*>
<!ELEMENT Superscript  (#PCDATA | Prompt | %Format; )*>
<!ELEMENT Suppress  (#PCDATA | Prompt )*>
<!ELEMENT Synopsis  (ILCSRef? ,  (Para | PreformatPara | table | RightPara | CenterPara)+ )>
<!ELEMENT Tab EMPTY>
<!ELEMENT TotalLine  (#PCDATA | Prompt | %Format; )*>
<!ENTITY % yesorno.attvals "CDATA">
<!ENTITY % yesorno "CDATA">
<!ENTITY % role.attrib "role    CDATA #IMPLIED">
<!ENTITY % label.attrib "label CDATA #IMPLIED">
<!ENTITY % common.attrib "">
<!ENTITY % formalobject.title.content "">
<!ENTITY % ndxterm.class "">
<!ENTITY % tbl.row.mdl "(entry)+">
<!ENTITY % tables.role.attrib "">
<!ENTITY % bodyatt "">
<!ENTITY % secur " %common.attrib;
   %tables.role.attrib;">
<!ENTITY % common.table.attribs "%bodyatt; %secur;">
<!ENTITY % tbl.table.mdl "(tgroup+)">
<!ENTITY % tbl.entry.mdl "StrikeText | AddText | AccountNum | Amount | ShortTitle |  
	SameLine | Bold | Italic | Subscript | Superscript | TotalLine | HardSpace | DotFill | SpaceFill | DashFill | Tab |
	Para | PreformatPara | RightPara | CenterPara | Prompt">
<!-- Reference CALS Table Model -->
<!ENTITY % tablemodel PUBLIC "-//OASIS//DTD DocBook XML CALS Table Model V4.0//EN" "calstblx.dtd">
%tablemodel;
