{"id":37042001,"url":"https://github.com/xmlresolver/xmlresolvercs","last_synced_at":"2026-01-14T04:57:34.666Z","repository":{"id":43824467,"uuid":"379860737","full_name":"xmlresolver/xmlresolvercs","owner":"xmlresolver","description":"A C# implementation of the XML Resolver","archived":false,"fork":false,"pushed_at":"2025-12-31T16:38:56.000Z","size":1155,"stargazers_count":4,"open_issues_count":3,"forks_count":4,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-04T22:54:29.868Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","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/xmlresolver.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-06-24T08:45:20.000Z","updated_at":"2025-12-31T16:35:42.000Z","dependencies_parsed_at":"2024-09-10T11:29:11.824Z","dependency_job_id":"94e8bd0d-bad4-4773-a600-fc4144c60c8c","html_url":"https://github.com/xmlresolver/xmlresolvercs","commit_stats":null,"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"purl":"pkg:github/xmlresolver/xmlresolvercs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlresolver%2Fxmlresolvercs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlresolver%2Fxmlresolvercs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlresolver%2Fxmlresolvercs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlresolver%2Fxmlresolvercs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xmlresolver","download_url":"https://codeload.github.com/xmlresolver/xmlresolvercs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlresolver%2Fxmlresolvercs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28409970,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T01:52:23.358Z","status":"online","status_checked_at":"2026-01-14T02:00:06.678Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2026-01-14T04:57:33.993Z","updated_at":"2026-01-14T04:57:34.657Z","avatar_url":"https://github.com/xmlresolver.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# xmlresolvercs\n\nA C# implementation of the XML Resolver\n\nSee [The XML Resolver Project](https://xmlresolver.org/) for more details.\n\n## APIs\n\nThis API implements `System.Xml.XmlResolver`.\n\nThe resolver can read catalogs from the local filesystem, from ZIP\nfiles, or from assemblies bundled with your application.\n\n## Version 6.x\n\nVersion 6.x is a significant refactoring and is not backwards compatible with version 2.x.\n(The underlying functionality is the same, but the API is different.)\nThe version 2.x sources are now in the\n[legacy_v2](https://github.com/xmlresolver/xmlresolvercs/tree/legacy_v2) branch. Important\nbug fixes will be applied to the 2.x release for some time, but new development is\nfocused on the 6.x release.\n\nThree main considerations drove the refactoring:\n\n1. Correcting design errors, mostly attempting to make the whole thing more C#-like.\n   The classes are now `XmlResolver.XmlResolver…` and not `Org.XmlResolver…`.\n2. Simplification of the design (removing the caching feature, for example)\n3. Bringing the [Java](https://github.com/xmlresolver/xmlresolver) and C# implementations\n   into better alignment.\n\n### What’s changed?(tl;dr)\n\nWhere previously you would have instantiated an\n`Org.Xmlresolver.Resolver` and used it as the entity resolver for `System.Xml.XmlResolver`\nyou should now instantiate an `XmlResolver.XmlResolver`. This new object has methods for\nperforming catalog lookup and resource resolution. It also has a method that\nreturns the `System.Xml.XmlResolver` resolver API:\n\n```\nXmlResolver.XmlResolver.getXmlResolver()\n```\n\nBehind the scenes, the API has been reworked so that most operations\nconsist of constructing a request for some resource, asking the `XmlResolver` to either\n(just) look it up in the catalog or resolve it, and returning a response.\n\n## A note about version numbers\n\nThe XML Resolver API is often integrated into other projects and\nproducts. On the one hand, this means that it’s valuable to publish\nnew releases early so that integrators can test them. On the other\nhand, integrators quite reasonably want to make production releases\nwith only the most stable versions.\n\nIn an effort to make this easier, starting with version 6.x, the XML\nResolver releases will use an even/odd pattern version number strategy\nto identify development and stable branches.\n\nIf the second number in the verion is even, that’s a work-in-progress,\nstabalization release. Please test it, and report bugs. If the second\nnumber is odd, that’s a stable release. (Test that and report bugs\ntoo, obviously!)\n\nIn other words 6.0.x are stabalization releases. When the API is\ndeemed stable, there will be a 6.1.0 release. If more features are\ndeveloped or significant changes are undertaken, those will be\npublished in a series of 6.2.x releases before stabalizing in a 6.3.0\nrelease. Etc.\n\n## ChangeLog\n\n### 6.0.21\n\n* Now targets `netstandard2.0` for broader compatibility\n* A number of build and test improvements\n* /hattip @bernd5\n\n\n## Cloning\n\nThe build now includes a collection of schemas and resources that can\nbe made available in a “data” assembly.\nBecause these resources are shared across both the Java and C#\nprojects, they’re in a separate repo and that repo is a “submodule” of\nthis one.\n\nWhat that means in practice is that after you clone this repository,\nyou must also run:\n\n```\ngit submodule sync\ngit submodule update --init\n```\n\nThat will make sure that the submodule is checked out and the data\nfiles are available.\n\nRun the Gradle tasks to build the data.\n\n```\n./gradlew make_data_csproj make_data_tests\n```\n\n### Loading assembly catalogs\n\nAssembly catalogs are loaded using their `AssemblyName`, not their\npath:\n\n```\n  config.SetFeature(ResolverFeature.ASSEMBLY_CATALOGS,\n    \"MyAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\");\n```\n\nYou can leave the version out of the name.\n\n## Release notes\n\nReleases are being pushed to [NuGet](https://www.nuget.org/packages/XmlResolver/).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxmlresolver%2Fxmlresolvercs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxmlresolver%2Fxmlresolvercs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxmlresolver%2Fxmlresolvercs/lists"}