module Network.TableStorage.XML (
qualify, cDataText, namespaceAttr
) where
import Text.XML.Light.Types
( Content(Text),
CDataKind(CDataText),
CData(CData, cdData, cdLine, cdVerbatim),
QName(..),
Attr(..) )
qualify :: Maybe String -> Maybe String -> String -> QName
qualify namespace prefix name =
QName { qName = name,
qURI = namespace,
qPrefix = prefix }
cDataText :: String -> [Content]
cDataText content = [ Text CData { cdVerbatim = CDataText, cdData = content, cdLine = Nothing } ]
namespaceAttr :: String -> String -> Attr
namespaceAttr prefix uri =
Attr { attrKey = qualify Nothing (Just "xmlns") prefix,
attrVal = uri }