
Hi Uwe Schmidt, thanks a lot. Just one more question, I didn't find any example describing how to get the text information of a XML element in the picklers tutorial. So, if the use case element is described as follwing: <useCase> <id>UC_01</id> <name>Opening ...</name> <description>This use case describes how...</description> </useCase> How can I set the id, name and desription of a use case? -- use case data type data UseCaseModel = UCM Name [UseCase] data UseCase = UseCase Id Name Description deriving (Show) -- I tried the following picler implementation -- but I think that it is not correct. instance XmlPickler UseCase where xpickle = xpUseCase xpUseCase :: PU UseCase xpUseCase = xpElem "useCase" $ xpWrap ( \ (i, n, d) -> UseCase i n d, \t -> (ucId t, name t, description t)) $ (xpTriple (xpElem "id" xpText) (xpElem "name" xpText) (xpElem "description" xpText))
Hi Rodrigo,
I´m just starting with HXT. My question is, how can I expose a "use case" from the main function below (the XmlPickler for UseCase has been already defined):
main :: IO () main = do runX ( xunpickleDocument xpUseCase [ (a_validate,v_0) ], "uc.xml" ) return ()
For example, if I just want to show the use case contents, how can I call "show" for a retrived use case.
-------------------------------------
1. version
main :: IO () main = do [x] <- runX ( xunpickleDocument xpUseCase [ (a_validate,v_0) ], "uc.xml" ) print x return ()
x is processed outside the arrow
------------------------------------- 2. version
main :: IO () main = do runX ( xunpickleDocument xpUseCase [ (a_validate,v_0) ], "uc.xml" >>> arrIO print ) return ()
x is processed within an arrow by lifting the print function to then arrow level.
------------------------------------
There is a new wiki page about picklers http://www.haskell.org/haskellwiki/HXT/Conversion_of_Haskell_data_from/to_XM...
Cheers,
Uwe
--
Uwe Schmidt Web: http://www.fh-wedel.de/~si/
----------------------------------- Rodrigo Bonifácio de Almeida Universidade Católica de Brasília - Grupo de Engenharia de Software - JavaComBr (www.ucb.br/java)
participants (1)
-
rodrigo.bonifacio