{"id":20877459,"url":"https://github.com/t1/xml","last_synced_at":"2025-10-19T03:53:07.162Z","repository":{"id":57723474,"uuid":"78522805","full_name":"t1/xml","owner":"t1","description":"modern api for xml documents","archived":false,"fork":false,"pushed_at":"2022-01-05T05:13:49.000Z","size":117,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-19T09:32:10.758Z","etag":null,"topics":["java","xml"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/t1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-01-10T10:26:31.000Z","updated_at":"2022-01-05T05:13:50.000Z","dependencies_parsed_at":"2022-08-28T15:33:55.019Z","dependency_job_id":null,"html_url":"https://github.com/t1/xml","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t1%2Fxml","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t1%2Fxml/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t1%2Fxml/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t1%2Fxml/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/t1","download_url":"https://codeload.github.com/t1/xml/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243251246,"owners_count":20261178,"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":["java","xml"],"created_at":"2024-11-18T06:57:05.321Z","updated_at":"2025-10-10T23:12:00.550Z","avatar_url":"https://github.com/t1.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# xml [![Maven-Central](https://maven-badges.herokuapp.com/maven-central/com.github.t1/xml/badge.svg)](https://search.maven.org/artifact/com.github.t1/xml)\n\nmodern api for xml documents\n\nXml has a bad reputation for being complex. Part of that reputation comes from the APIs you have to use to work with it.\nThey haven't changed in years and reflect the coding style that was common 20 years ago.\nSo it's not fair to compare modern APIs, e.g. JSON-B, with the old APIs, e.g. JAX-B.\n\nThis project tries to give a XML a modern, fluent API.\nIt's not complete or polished, but I use it in some projects for production code.\n\n# sample code\n\n```java\nXml xml = Xml.createWithRootElement(\"root\");\nxml.addComment(\"my-comment\");\nxml.getOrCreateElement(\"elem\")\n    .setAttribute(\"attr\", \"val\")\n    .addText(\"foo\")\n    .addText(\"bar\");\n```\n\ncreates a document:\n\n```xml\n\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n\u003croot\u003e\n    \u003c!-- my-comment --\u003e\n    \u003celem attr=\"val\"\u003efoobar\u003c/elem\u003e\n\u003c/root\u003e\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ft1%2Fxml","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ft1%2Fxml","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ft1%2Fxml/lists"}