The main data structure along with some trivial helpers.
Standard foldl
Standard mapping of a value to another valueConvert an Xml.Value to a Json.Value
>>> import Dict
>>> import Json.Encode as Json
>>> xmlToJson (StrNode "hello")
Json.string "hello"
>>> xmlToJson (IntNode 5)
Json.int 5
>>> xmlToJson (FloatNode 5)
Json.float 5
>>> xmlToJson (BoolNode True)
Json.bool True
>>> xmlToJson (Object [ IntNode 5, BoolNode True ])
Json.list [Json.int 5, Json.bool True]
>>> xmlToJson (DocType "" Dict.empty)
Json.nullConvert a Json.Value into an Xml.Value
>>> jsonToXml (Json.string "hello")
StrNode "hello"
>>> jsonToXml (Json.int 5)
IntNode 5
>>> jsonToXml (Json.float 10.5)
FloatNode 10.5
>>> jsonToXml (Json.bool True)
BoolNode True
>>> jsonToXml (Json.object [("name", Json.string "hello")])
Object [ Tag "name" Dict.empty (StrNode "hello") ]
>>> jsonToXml (Json.list [Json.string "name", Json.string "hello"])
Object [ StrNode "name", StrNode "hello" ]
Representation of the XML tree