Document Revision History

This table describes the changes to SeismicXML: Using NSXMLParser to parse XML documents.


Upgraded to the iOS 9.0 SDK, now uses NSURLSession, changed to a newer xml feed and updated the parser.


Fixed 64-bit bug - earthquake magnitude now draws correctly.


Now uses NSURLConnection's sendAsynchronousRequest API, also uses NSCurrentLocaleDidChangeNotification to detect for locale changes.


Updated to use ARC and storyboards.


Now using NSOperation to perform the XML parsing.


Updated for and tested with iOS 4.0 SDK. Also updated artwork and added NSXMLParserDelegate protocol.


Proper formatting of dates, fixed earthquake reporting URLs due to changes in USGS page, removed unused frameworks, improved error reporting, now using KVO for table view updates.


Switched NSXMLParser to use initWithData: instead of initWithContentsOfURL: and implemented asynchronous NSURLConnection for download to give better control of network error handling. Consolidated parsing into app delegate for better handling of parse error callbacks and to avoid the design pattern of using the app delegate as a singleton for data access. Switched from custom UITableViewCell subclass to managing the layout with view tags to meet documented best practices. Modified Earthquake class to model numeric and date properties as numbers and dates instead of strings and merged string parsing code into the XML parsing code. Added use of the lat/lon data for opening Maps link.


First public release.


-Updated for Beta 7. -Fixed memory leaks in XMLReader.m. -Now uses the SystemConfiguration framework to determine if the RSS feed provider is available and displays a message in the table view if it's not.


Updated for Beta 6. The custom table view cell add subviews to its content view rather than drawing them directly.


-Updated for Beta 5. -Removed the XML-to-Objective-C object mapping to simplify the sample. -Moved the XML parsing to a background thread.


Updated for Beta 4. Now uses NSXMLParser to parse XML.


Updated for Beta 3. Revised to use new table cell API. Removed unnecessary frameworks and files.


New sample that demonstrates how to use libxml SAX and DOM APIs to parse XML.