{"id":13848827,"url":"https://github.com/novoda/simple-easy-xml-parser","last_synced_at":"2025-07-12T13:32:48.545Z","repository":{"id":9103707,"uuid":"10883852","full_name":"novoda/simple-easy-xml-parser","owner":"novoda","description":"Simple XML Parsing into Domain Objects","archived":true,"fork":false,"pushed_at":"2022-02-10T15:56:26.000Z","size":907,"stargazers_count":69,"open_issues_count":0,"forks_count":33,"subscribers_count":50,"default_branch":"master","last_synced_at":"2024-07-01T10:57:11.033Z","etag":null,"topics":["android","novoda","open-source","xml-parsing"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/novoda.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-06-23T12:15:37.000Z","updated_at":"2023-01-28T03:13:39.000Z","dependencies_parsed_at":"2022-09-06T04:21:37.007Z","dependency_job_id":null,"html_url":"https://github.com/novoda/simple-easy-xml-parser","commit_stats":null,"previous_names":["novoda/simpleeasyxmlparser"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novoda%2Fsimple-easy-xml-parser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novoda%2Fsimple-easy-xml-parser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novoda%2Fsimple-easy-xml-parser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/novoda%2Fsimple-easy-xml-parser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/novoda","download_url":"https://codeload.github.com/novoda/simple-easy-xml-parser/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":213949824,"owners_count":15661677,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","novoda","open-source","xml-parsing"],"created_at":"2024-08-04T19:00:58.786Z","updated_at":"2024-08-04T19:03:27.163Z","avatar_url":"https://github.com/novoda.png","language":"Java","readme":"# 🛑 THIS REPOSITORY IS OFFICIALLY NO LONGER UNDER MAINTENANCE since 10/02/2022 🛑\n\n# simple-easy-xml-parser [![](https://ci.novoda.com/buildStatus/icon?job=simple-easy-xml-parser)](https://ci.novoda.com/job/simple-easy-xml-parser/lastBuild/console) [![Download](https://api.bintray.com/packages/novoda/maven/simple-easy-xml-parser/images/download.svg) ](https://bintray.com/novoda/maven/simple-easy-xml-parser/_latestVersion) [![Apache 2.0 Licence](https://img.shields.io/github/license/novoda/simple-easy-xml-parser.svg)](https://github.com/novoda/simple-easy-xml-parser/blob/master/LICENSE.txt)\n\nXML parsing is now sexy!\n\n\n## Description\n\nA simple, high performance, typed XML parser based upon Android sax parser but written in pure Java. SEXP gives callbacks for all parsing events and being written in pure java allows faster and more comprehensive testability.\n\nMoreover SEXP is a pull-parsing XML deserialiser which affects both performance (no reflection is required) and low memory footprint (unncessary objects are not allocated). Our testing shows that SEXP performs:\n\n- 1.7x faster than [Jackson](https://github.com/FasterXML/jackson-dataformat-xml) \n- 2.5x faster than [Simple-Framework](http://simple.sourceforge.net/). \n\nYou can refer to the following [micro-benchmarking](https://github.com/novoda/simple-easy-xml-parser/tree/master/benchmark) for further information.\n\n\n## Adding to your project\n\nTo start using this library, add these lines to the `build.gradle` of your project:\n\n```groovy\nrepositories {\n    jcenter()\n}\n\ndependencies {\n    compile 'com.novoda:sexp:1.0.8'\n}\n```\n\n## Simple usage\n\n```java\nString XML =\n            \"\u003cnovoda\u003e\" +\n              \"\u003cfavouriteColour\u003eBlue\u003c/favouriteColour\u003e\" +\n            \"\u003c/novoda\u003e\";\n\nElementFinderFactory factory = SimpleEasyXmlParser.getElementFinderFactory();\nelementFinder = factory.getStringFinder();\nStreamer\u003cString\u003e streamer = new SimpleStreamer(elementFinder);\nString favouriteColour = SimpleEasyXmlParser.parse(XML, streamer);\n\nprivate static class SimpleStreamer implements Streamer\u003cString\u003e {\n\n    private final ElementFinder\u003cString\u003e elementFinder;\n    private final String elementTag;\n\n    public SimpleStreamer(ElementFinder\u003cString\u003e elementFinder, String elementTag) {\n        this.elementFinder = elementFinder;\n        this.elementTag = elementTag;\n    }\n\n    @Override\n    public RootTag getRootTag() {\n        return RootTag.create(\"novoda\");\n    }\n\n    @Override\n    public void stream(RootElement rootElement) {\n        elementFinder.find(rootElement, elementTag);\n    }\n\n    @Override\n    public String getStreamResult() {\n        return elementFinder.getResultOrThrow();\n    }\n}\n```\n(See the `demo` and `demoAndroid` modules for more.)\n\n## Links\n\nHere are a list of useful links:\n\n * We always welcome people to contribute new features or bug fixes, [here is how](https://github.com/novoda/novoda/blob/master/CONTRIBUTING.md)\n * If you have a problem check the [Issues Page](https://github.com/novoda/simple-easy-xml-parser/issues) first to see if we are working on it\n * For further usage or to delve more deeply checkout the [Project Wiki](https://github.com/novoda/simple-easy-xml-parser/wiki)\n * Looking for community help, browse the already asked [Stack Overflow Questions](http://stackoverflow.com/questions/tagged/support-sexp) or use the tag: `support-sexp` when posting a new question\n","funding_links":[],"categories":["Java"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovoda%2Fsimple-easy-xml-parser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnovoda%2Fsimple-easy-xml-parser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovoda%2Fsimple-easy-xml-parser/lists"}