IntroductionTouchXML is a lightweight replacement for Cocoa's NSXML cluster of classes. It is based on the commonly available Open Source libxml2 library. LicenseTouchXML is released under the MIT license. GoalsThe goal is to create a lightweight NSXML style XML api that can used in environments without NSXML (e.g. iPhone). - XML read only. The aim is to make a lite API for reading XML. I'm assuming most applications will only need to read XML and wont need to generate it (AJAX applications tend to receive XML data but transmit data via URL or HTTP form-encoding). Please let me know if your application needs XML write support.
- Lightweight. Rarely used NSXML functionality should not be implemented.
Currently implemented- XML parsing from NSString and NSData.
- Support for Documents, Elements, Attributes. Most NSXMLNode "navigation" methods are implemented (parent, nextSibling, children, etc).
- Basic xpath support.
- Unit Tests
RoadmapShort Term- Improved xpath functionality (make 1:1 equivalent with NSXMLNode).
- More Unit Tests
- Robust error handling (use xmlError.h)
- Support for any NSDocument option flags that make sense.
- 1:1 equivalency with NSXMLNode apis for naviation (I think we are equivalent, just need unit tests to prove it).
Medium Term- Namespace Support
- xslt support
Long Term/Never- XML output/writing
- xquery
- XML tidy (this includes HTML importing)
|
You rock.
This will be super helpful. I can't believe this isn't part of the framework...
Thank you so much! I cannot believe they didn't include web services core...
how about some sample code for win32 developers?
@nicktulip The code is based on a subset of NSXMLDocument, You can see apple's documentation for NSXMLDocument here: http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSXMLDocument_Class/Reference/Reference.html
There's a bit of info here too:
http://code.google.com/p/touchcode/wiki/TouchXMLImplementation
It's very useful, thanks.
Where can i download the TouchXML framework?
you can check it out using: svn checkout http://touchcode.googlecode.com/svn/trunk/ touchcode-read-only
Does touchXML implement the xmlXPathRegisterNs method and allow the user to do an XPath Search using namespace prefixes?
License question, how do you interpret the MIT license clause "include a copy of the license with your distribution" on the iPhone? Do we need to provide the MIT license in an About page, or is it needed at all?
Has someone successfully integrated libtidy with TouchXML ? The URL I want to analyse gives me lots of parser errors and cannot be analysed with TouchXML.
I have integrated libtidy with TouchXML. I'll look at adding it.
BTW Great TouchXML tutorial here: http://dblog.com.au/general/iphone-sdk-tutorial-building-an-advanced-rss-reader-using-touchxml-part-1/
I've created TouchCode? Dev Google Group. This is now the preferred forum for TouchCode? related development questions: http://groups.google.com/group/touchcode-dev
Please, what is the new address for the SVN checkout? I had this one, and it is not working...
svn checkout http://touchcode.googlecode.com/svn/trunk/ touchcode-read-only Thx in advance for any help!
they use mercurial now (for some odd reason...)
Sorry for a newbie question but how can I read the "content:encoded" element?
Generally, I use this with success on reading "description", "title" but can't use by specify "content:encoded".
objectAtIndex: feedEntryIndex? objectForKey: @"title"]
Thank you in advanced. Seree W.
Thank you so much. Can't believe Apple didn't have the foresight to include some sort of XML parser. Surely it wouldn't add too much overhead.