SWXMLHash VS AEXML

Compare SWXMLHash vs AEXML and see what are their differences.

AEXML

Swift minion for simple and lightweight XML parsing (by tadija)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
SWXMLHash AEXML
2 1
1,368 988
- -
3.1 5.3
21 days ago 3 months ago
Swift Swift
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

SWXMLHash

Posts with mentions or reviews of SWXMLHash. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-05-25.
  • Regex Linux
    1 project | /r/swift | 9 Oct 2022
    import PackageDescription let package = Package( name: "Extractor", dependencies: [ .package(url: "https://github.com/drmohundro/SWXMLHash.git", from: "7.0.0") ], targets: [ .executableTarget( name: "Extractor", dependencies: [.product(name: "SWXMLHash", package: "SWXMLHash")]) ] )
  • Creating an Apple TV app with SwiftUI
    2 projects | dev.to | 25 May 2022
    In the function, we first call the parse() function of SWXMLHash on our input, and then iterate over the returned SWXMLHash.XMLIndexer value. Depending on the format of the input, we'll either iterate over every entry inside the feed, or every item inside the channel; create an VideoItem object for each, and append it to either our liveVideoItems or videoItems array.

AEXML

Posts with mentions or reviews of AEXML. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-09.
  • Lessons learned from migrating a native iOS app to Flutter
    2 projects | news.ycombinator.com | 9 Jan 2022
    In the article, he mentions the need for a DOM parser dependency for his app, as Swift “does not have one.”

    > AEXML was needed to parse some XHTML files as the native iOS SDK does not provide a DOM parser.

    I have used Foundation XML parsers[0] for many years, but they are general-purpose; not specifically modeled on DOM or HTML, which probably limits usefulness on some Web content.

    That said, if he has control of the content (don’t know the app, so I am not sure), then there should be no reason that they couldn’t render it in XHTML, so the Foundation parser could be used reliably. In the article, he mentions that the content is XHTML. I have to assume that AEXML[1] is easier to use than the built-in parser. It uses Foundation parsing (it actually seems to be a lightweight wrapper for the built-in parser(, under the hood (and seems to be a well-written dependency).

    So, it could be posited that he would only need one dependency for his native version, if he wanted to handle the XHTML parsing, himself.

    [0] https://developer.apple.com/documentation/foundation/archive...

    [1] https://github.com/tadija/AEXML

What are some alternatives?

When comparing SWXMLHash and AEXML you can also consider the following projects:

SwiftyXML - The most swifty way to deal with XML data in swift 5.

Fuzi - A fast & lightweight XML & HTML parser in Swift with XPath & CSS support

XMLParser - A lightweight XMLParser for assembling and parsing XML values written for iOS 8+ in Swift 2.

AlamofireXmlToObjects - Fetch a XML feed and parse it into objects

XMLCoder - Easy XML parsing using Codable protocols in Swift

XMLMapper - A simple way to map XML to Objects written in Swift