<!-- DTD for CommonMark xml export format --> <!ENTITY % block 'block_quote|list|code_block|html|paragraph|header|hrule'> <!ENTITY % inline 'text|softbreak|linebreak|code|inline_html|emph|strong|link|image'> <!ELEMENT document (%block;)*> <!-- block elements --> <!ELEMENT block_quote (%block;)*> <!ELEMENT list (item)+> <!ATTLIST list type (bullet|ordered) #REQUIRED start CDATA #IMPLIED tight (true|false) #REQUIRED delimiter (period|paren) #IMPLIED> <!ELEMENT item (%block;)*> <!ELEMENT code_block (#PCDATA)> <!ATTLIST code_block xml:space CDATA #FIXED "preserve" info CDATA #IMPLIED> <!ELEMENT html (#PCDATA)> <!ATTLIST html xml:space CDATA #FIXED "preserve"> <!ELEMENT paragraph (%inline;)*> <!ELEMENT header (%inline;)*> <!ATTLIST header level (1|2|3|4|5|6) #REQUIRED> <!ELEMENT hrule EMPTY> <!-- inline elements --> <!ELEMENT text (#PCDATA)> <!ELEMENT softbreak EMPTY> <!ELEMENT linebreak EMPTY> <!ELEMENT code (#PCDATA)> <!ATTLIST code xml:space CDATA #FIXED "preserve"> <!ELEMENT inline_html (#PCDATA)> <!ATTLIST inline_html xml:space CDATA #FIXED "preserve"> <!ELEMENT emph (%inline;)*> <!ELEMENT strong (%inline;)*> <!ELEMENT link (%inline;)*> <!ATTLIST link destination CDATA #REQUIRED title CDATA #IMPLIED> <!ELEMENT image (%inline;)*> <!ATTLIST image url CDATA #REQUIRED title CDATA #IMPLIED> <!-- all elements can have a sourcepos attribute --> <!ATTLIST ANY sourcepos CDATA #IMPLIED>