Partial support for parsing XML namespaces
What's changed?
Partial support for #3919, including namespace parsing and resolution
What's your motivation?
#3919
Anything in particular you'd like reviewers to focus on?
No
Anyone you would like to review specifically?
No
Have you considered any alternatives or workarounds?
No
Any additional context
No
Checklist
- [x] I've added unit tests to cover both positive and negative cases
- [x] I've read and applied the recipe conventions and best practices
- [x] I've used the IntelliJ IDEA auto-formatter on affected files
Thanks for getting this started @ammachado ! I've also tagged @knutwannheden for review since we're adding methods in the xml/tree package which require some additional scrutiny just to be safe.
Once merged we can revisit these recipes in rewrite-migrate-java: https://github.com/openrewrite/rewrite-migrate-java/pull/395/commits/9181655289694a9e5b93a0f3c4c08b0db84a2c34
It seems like the recipes included in this PR are possible already without introducing new public API surface area in the form of this Namespaces concept. If this PR were just the recipes without the API changes it would be easier to accept.