MagpieRSS provides an XML-based (expat) RSS parser in PHP.
MagpieRSS is compatible with RSS 0.9 through RSS 1.0. Also parses RSS 1.0's modules, RSS 2.0, and Atom. (with a few exceptions).
FParsec is an F# adaptation of Parsec. It can parse context-sensitive, infinite look-ahead grammars. The basic idea behind combinator parsing is to compose parsers for higher-level grammar expressions from simple atomic parsers. A parser combinator library provides those predefined atomic parsers and the means to combine them into larger units. In the case of FParsec all parsers are F# functions, functions that can be combined with higher-level functions, so-called "combinators". The parser combinator approach as implemented by FParsec has a number of advantages * Power. Since parsers are first-class values within the language, users can draw on the full power of F# to implement their parsers. * Extensibility. FParsec has a modular design that is very amenable to extensions. No matter how complicated your grammar is, you will always be able to parse it * Quality of error messages. Parsers implemented with FParsec generate intelligible error messages
This project started from my frustration that I could not find any simple, portable XML Parser to use inside my tools (see CONDOR for example). Let's look at the well-known Xerces C++ library: the complete Xerces project is 53 MB! (11 MB compressed in a zipfile). I am currently developping many small tools. I am using XML as standard for all my input /ouput configuration and data files. The source code of my small tools is usually around 600KB.