24 type WikiPage = [BlockElement]
30 , headingText :: !String
34 | DefinitionList ![Definition]
35 | Preformatted ![InlineElement]
36 | Paragraph ![InlineElement]
37 | Div ![Attribute] ![BlockElement]
39 | BlockCmd !BlockCommand
40 deriving (Eq, Show, Typeable, Data)
45 | Italic ![InlineElement]
46 | Bold ![InlineElement]
48 objLinkPage :: !PageName
49 , objLinkText :: !(Maybe String)
52 linkPage :: !(Maybe PageName)
53 , linkFragment :: !(Maybe String)
54 , linkText :: !(Maybe String)
58 , extLinkText :: !(Maybe String)
60 | LineBreak ![Attribute]
61 | Span ![Attribute] ![InlineElement]
63 imgSource :: !PageName
64 , imgAlt :: !(Maybe String)
66 | Anchor ![Attribute] ![InlineElement]
68 | InlineCmd !InlineCommand
69 deriving (Eq, Show, Typeable, Data)
75 , listItems :: ![ListItem]
77 deriving (Eq, Show, Typeable, Data)
83 deriving (Eq, Show, Typeable, Data)
86 type ListItem = [Either ListElement InlineElement]
91 defTerm :: ![InlineElement]
92 , defDesc :: ![InlineElement]
94 deriving (Eq, Show, Typeable, Data)
103 type Attribute = (String, String)
109 , bCmdAttributes :: ![Attribute]
110 , bCmdContents :: ![BlockElement]
112 deriving (Eq, Show, Typeable, Data)
118 , iCmdAttributes :: ![Attribute]
119 , iCmdContents :: ![InlineElement]
121 deriving (Eq, Show, Typeable, Data)