- data Document = Document {}
- data Prologue = Prologue {}
- data Instruction = Instruction {}
- data Miscellaneous
- data Node
- data Element = Element {
- elementName :: Name
- elementAttributes :: [Attribute]
- elementNodes :: [Node]
- data Attribute = Attribute {
- attributeName :: Name
- attributeContent :: [Content]
- data Content
- data Name = Name {}
- class Named a where
- data Doctype = Doctype {}
- data ExternalID
- data InternalSubset
- data Event
- isElement :: Node -> [Element]
- isInstruction :: Node -> [Instruction]
- isContent :: Node -> [Content]
- isComment :: Node -> [Text]
- isNamed :: Named a => Name -> a -> [a]
- nodeChildren :: Node -> [Node]
- elementChildren :: Element -> [Element]
- elementContent :: Element -> [Content]
- hasAttribute :: (Attribute -> [Attribute]) -> Element -> [Element]
- position :: Integer -> (a -> [b]) -> a -> [b]
Types
Document prologue
data Instruction Source
data Miscellaneous Source
Document body
Element | |
|
Name | |
|
Eq Name | Ignores prefixes |
Ord Name | Ignores prefixes Since 0.1.3 |
Show Name | |
IsString Name | Supports Clark notation; see http://www.jclark.com/xml/xmlns.htm and http://infohost.nmt.edu/tcc/help/pubs/pylxml/etree-QName.html Since 0.1.2 |
Doctypes
Incremental processing
Some XML processing tools are incremental, and work in terms of events rather than node trees. Defining the event type here, even though it won't be useful to most users, allows these packages to interoperate more easily.
Since: 0.1.1
Predicates
isInstruction :: Node -> [Instruction]Source
Filters
nodeChildren :: Node -> [Node]Source
elementChildren :: Element -> [Element]Source
elementContent :: Element -> [Content]Source
Since 0.1.4