Do good work, be interested and show interest, and be in a recipiable environment.
If your current environment is overbearing with power politics you don't succeed in and you want change you'll probably have to change environments.
If you want impact consider whether smaller companies and teams would be beneficial. You may be able to fill your desires of impact and control even without becoming a formal lead role. Or become one implicitly or naturally quicker in smaller less formal and structured environments.
You can also look for job offerings for those kinds of roles specifically. No need to seek out a climb in house when you can find more direct routes.
If the XML parser parses into an ordered representation (the XML information set), isn't it then the deserializer's choice how they map that to the programming language/type system they are deserializing to? So in a system with ordered arrays it would likely map to those?
If XML can be written in an ordered way, and the parsed XML information set has ordered children for those, I still don't see where order gets lost or is impossible [to guarantee] in XML.
while JSON is a generalized data structure with support for various data types supported by programming languages
Honestly, I find it surprising that you say “support for various data types supported by programming languages”. Data types are particularly weak in JSON when you go beyond JavaScript. Only number for numbers, no integer types, no date, no time, etc.
Regarding use, I see, at least to some degree, JSON outside of use for network transfer. For example, used for configuration files.
The point is that there are degrees to readability, specificity, and obviousness, even without a common understanding. Self-describing data, much like self-describing code, is different from a dense serialization without much support in that regard.
Making XML schemas work was often a hassle. You have a schema ID, and sometimes you can open or load the schema through that URL. Other times, it serves only as an identifier and your tooling/IDE must support ID to local xsd file mappings that you configure.
Every time it didn't immediately work, you'd think: Man, why don't they publish the schema under that public URL.
It can be used as alternatives. In MSBuild you can use attributes and sub elements interchangeably. Which, if you're writing it, gives you a choice of preference. I typically prefer attributes for conciseness (vertical density), but switch to subelements once the length/number becomes a (significant) downside.
Of course that's more of a human writing view. Your point about ambiguity in de-/serialization still stands at least until the interface defines expectation or behavior as a general mechanism one way or the other, or with specific schema.
The readability and obviousness of XML can not be overstated. JSON is simple and dense (within the limit of text). But look at JSON alone, and all you can do is hope for named fields. Outside of that, you depend on context knowledge and specific structure and naming context.
Whenever I start editing json config files I have to be careful about trailing commas, structure with opening and closing parens, placement and field naming. The best you can do is offer a default-filled config file that already has the full structure.
While XML does not solve all of it, it certainly is more descriptive and more structured, easing many of those pain points.
It's interesting that web tech had XML in the early stages of AJAX, the dynamic web. But in the end, we sent JSON through XMLHttpRequest. JSON won.
There was a time where HTML moved towards a more formalized XML-valid definition named XHTML. Ultimately, web/browser backwards compatibility and messy and forgiving nature lead to us giving up on that and now we have the HTML living standard with rules, but browsers (not sure to what degree it's standardized or not) are very forgiving in their interpretation.
While HTML, prior to HTML5, was defined as an application of Standard Generalized Markup Language (SGML), a flexible markup language framework, XHTML is an application of XML, a more restrictive subset of SGML. XHTML documents are well-formed and may therefore be parsed using standard XML parsers, unlike HTML, which requires a lenient, HTML-specific parser.[1]
XHTML 1.0 became a World Wide Web Consortium (W3C) recommendation on 26 January 2000. XHTML 1.1 became a W3C recommendation on 31 May 2001. XHTML is now referred to as "the XML syntax for HTML"[2][3] and being developed as an XML adaptation of the HTML living standard.[4][5]
Most use cases don’t need fully sematic data storage
If both sides have a shared data model it's a good base model without further needs. Anything else quickly becomes complicated because of the dynamic nature of JSON - at least if you want a robust or well-documented solution.
Depending on how stable your work, environment, and risks are, the range size and confidence rating may change a lot or reach refinement limits quite fast.
I'm not saying you're wrong, but would we even be seeing them when they exist? When I publish or update my personal projects as public GitHub repos nobody sees and nobody cares. I imagine it would be the same if I were using LLM.
I wouldn't call such things agents though. They're not acting autonomously or out-of-process.