[Haskell-cafe] XML Validation and Digestion in Haskell

Chris Eidhof chris at eidhof.nl
Fri Mar 23 00:42:41 EDT 2007


Don't spend too much time on the various libraries though. I tried  
some simple things with Haskell and XML, but I found it really hard  
to actually parse a simple document. You really don't want to write  
your own parser.

The only tool that worked for me was HXT, which is based on arrows.  
These are pretty hard to grasp right away, but really powerful. I  
really like the way they are used in HXT, but it still feels a bit  
weird sometimes.

Good luck, and keep us posted.

-chris

On Mar 22, 2007, at 7:52 AM, Andrew Wagner wrote:

> Hi Arun,
> Your problem description seems a little vague - which is
> understandable, considering how embedded in your business model it is.
> As for general recommendations, I'm no guru, but I would suggest
> looking at the existing XML libraries in Haskell [1], and if that's
> not powerful enough, check out parsec[2] for building a custom parser.
> I think to get more specific recommendations, you would need to give
> more details about the problem. Hope this helps somewhat. Andrew
>
> [1]: http://www.haskell.org/haskellwiki/Libraries_and_tools/ 
> Web_programming#XML_2
> [2]: http://www.cs.uu.nl/people/daan/download/parsec/parsec.html
>
>
> On 3/22/07, Arun Suresh <arun.suresh at gmail.com> wrote:
>> Hi..
>>
>> I am currently working on a project where basically we do a lot of  
>> XML
>> validation and digestion. For example :
>> We recieve an XML document A, if the document passes schema  
>> validation, we
>> do some business level validations, then from A, we create XML  
>> digests B, C
>> and D.
>> Our code-base is written completely in Java. We had earlier tried  
>> using
>> XSLT, but it became too unwieldy to manage (we ended up making  
>> calls to
>> other Java classes from the XSLT engine)
>>
>> The problem we are facing right now is that we have huge  
>> hierarchies of
>> Validators, Digestors and Contexts. It just doesnt look right. I  
>> just cant
>> help but wonder if theres a better way of doing this...
>>
>> I have been trying to get my hands dirty with Haskell for a couplo  
>> weeks
>> now. all the while keeping the problem at hand in the back of my  
>> mind.. I
>> just dont seem to be see how applying functional programming  
>> concepts can
>> help in this scenario.. Was wondering if somebody could probably  
>> give me
>> some pointers..
>>
>> Regards
>> Arun
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>>
>>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe



More information about the Haskell-Cafe mailing list