
1 2 3 4 5 6 7 8 9 10 | sexpr2xml' :: Sexpr -> Maybe Element sexpr2xml' (List (Atom name:List ats:els)) = do attrs <- mapM readAts ats elems <- mapM sexpr2xml' els return $ Elem name attrs elems sexpr2xml' _ = Nothing readAts :: Sexpr -> Maybe Attribute readAts (List (Atom name:Atom val:[])) = Just $ Attr name val readAts _ = Nothing |