Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lilyball/feedparser

A Cocoa RSS/Atom parser for Mac OS X and the iPhone
https://github.com/lilyball/feedparser

Last synced: 4 days ago
JSON representation

A Cocoa RSS/Atom parser for Mac OS X and the iPhone

Awesome Lists containing this project

README

        

# Introduction

FeedParser is an NSXMLParser-based RSS/Atom feed parser for Cocoa. It is
intended to parse well-formed RSS and Atom feeds on both the desktop and the
iPhone.

## Usage

The simplest way to use FeedParser is to simply add the FeedParser directory
to your project. FeedParser also includes a static library target if you
prefer to include it that way.

## Design Goals

FeedParser was designed to parse valid RSS and Atom feeds, including support
for extensions outside of the RSS or Atom namespaces. All parsed feeds MUST be
well-formed, but the parser may or may not enforce validity.

## Current State

As of this writing, FeedParser can parse a full valid RSS 2.0 feed, though it
intentionally skips elements that I did not consider useful. The parser may be
extended later to expose the values of those elements. FeedParser has only a
limited understanding of Atom feeds. It can understand a handful of Atom
elements embedded within an RSS feed, but it cannot understand a complete Atom
feed. Full understanding of Atom feeds is one of the future goals of this
project.

FeedParser requires that the entire feed must be a well-formed XML document,
but it does not do any validity checking of individual elements.

## Future Development

The goals for future development of FeedParser are the following:

* Fully support Atom feeds

* Be as lenient as possible. To this extent, parsing non-well-formed documents
should be investigated. NSXMLParser is documented as aborting parsing upon
encountering an error, but in practice it appears that, at least on Mac OS X
10.5, it actually can recover from errors. However, at the current time
FeedParser explicitly aborts the parser when an error is encountered

* Support the more common RSS/Atom extensions

* Better error reporting

## Naming Issues

The name FeedParser conflicts with RSS/Atom parsers for other languages. A new
name unique name should be chosen that is available on Google Code for bug
reporting purposes.