forked from commonmark/commonmark-spec
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CommonMark.dtd
90 lines (65 loc) · 2.18 KB
/
CommonMark.dtd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<!-- DTD for CommonMark xml export format -->
<!ENTITY % block
'block_quote|list|code_block|paragraph|heading|thematic_break|html_block|custom_block'>
<!ENTITY % inline
'text|softbreak|linebreak|code|emph|strong|link|image|html_inline|custom_inline'>
<!ELEMENT document (%block;)*>
<!ATTLIST document
xmlns CDATA #FIXED "http://commonmark.org/xml/1.0">
<!-- 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 paragraph (%inline;)*>
<!ELEMENT heading (%inline;)*>
<!ATTLIST heading
level (1|2|3|4|5|6) #REQUIRED>
<!ELEMENT thematic_break EMPTY>
<!ELEMENT html_block (#PCDATA)>
<!ATTLIST html_block
xml:space CDATA #FIXED "preserve">
<!ELEMENT custom_block (%inline;|%block;|item)*>
<!ATTLIST custom_block
on_enter CDATA #IMPLIED
on_exit CDATA #IMPLIED>
<!-- inline elements -->
<!ELEMENT text (#PCDATA)>
<!ELEMENT softbreak EMPTY>
<!ELEMENT linebreak EMPTY>
<!ELEMENT code (#PCDATA)>
<!ATTLIST code
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
destination CDATA #REQUIRED
title CDATA #IMPLIED>
<!ELEMENT html_inline (#PCDATA)>
<!ATTLIST html_inline
xml:space CDATA #FIXED "preserve">
<!ELEMENT custom_inline (%inline;)*>
<!ATTLIST custom_inline
on_enter CDATA #IMPLIED
on_exit CDATA #IMPLIED>
<!-- All elements can have a sourcepos attribute.
The format is SL:SC-EL:EC
where SL = number of starting line (first line = 1)
EL = number of ending line
SC = number of starting column (first column = 1)
EC = number of ending column
-->
<!ATTLIST ANY sourcepos CDATA #IMPLIED>