A simple XML parser for Elixir designed to parse RSS/Atom feeds.
XML parser for Elixir
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
SweetXml is an Elixir library that simplifies working with XML by providing a clean, expressive API for querying and converting XML documents into native Elixir data structures like maps, lists, strings, and numbers. It wraps the Erlang :xmerl module, making XML parsing more accessible and intuitive for Elixir developers. ## Key Features - **XPath Sigil** — Use the `~x` sigil to write concise XPath 1.0 queries with modifiers for lists, strings, integers, and optional nodes. - **Nested Mapping** — Transform complex XML hierarchies into nested Elixir maps and keyword lists directly in query specifications. - **Streaming Support** — Parse large XML documents efficiently using Elixir streams with tag-based streaming and memory management options. - **Namespace Handling** — Work with XML namespaces by adding custom prefixes regardless of the document's original namespace declarations. - **Value Transformation** — Apply custom transformation functions to extracted values using `transform_by/2` for data cleanup or formatting. - **Security Options** — Separate parsing from mapping to apply security settings like disabling DTD processing for untrusted documents. ## Philosophy SweetXml aims to make XML parsing in Elixir as straightforward as possible, providing a thin, idiomatic layer over :xmerl that emphasizes simplicity, composability, and safety.
An Elixir library for parsing and extracting data from HTML and XML with CSS or XPath selectors.
Fast SAX parser and encoder for XML in Elixir
XML parser for Erlang