Comment by cyberax

5 hours ago

Why it _shouldn't_ be SOAP?

It's a perfectly fine protocol, with a rigid schema and mature code generation support for all relevant languages. It's not the sexiest protocol, but it gets the job done.

And what are the alternatives? JSON schema?

> mature code generation support for all relevant languages.

Heh, "relevant languages" is kind of an interesting term there. If the relevant language is Java then sure, it's fine.

Some popular modern languages (ie Go) don't have good SOAP support (yet). At least not to the point of being able to point them at WSDL/XSD specs and have everything auto-generated. :(

  • That seems like a Go problem. I don't exactly love SOAP and WSDL, but it was the default choice for Java and .Net 10 - 15 years ago in enterprise applications. Given the complexity, rewriting it a few years late, just to switch from a perfectly functional SOAP API to REST makes no sense and would mean that you either run two stack, or force every integrator to rewrite their software.

    That's just no how the real world works. When this was launched Go probably wasn't a relevant language, Rust probably barely existed and the whole thing was designed for a corporate setting, where Java and .Net are the standards. All those who are asking "Why SOAP?" or suggests replacing it seems rather naive about how most corporate software is sold, designed, built and maintained, as well as expected lifetimes of solutions.

  • I think that‘s a matter of days and few hundred dollars in tokens to port it to Go if you really need it. Porting is where AI can do a really good job with the right instructions.

    • Yeah, kind of.

      It's more than just a few days of effort though. Sme of the members of my team at work have been working on adding SOAP 1.1 support. It's a significant amount of time and effort though.

  • WSDL/XSD specs in this case seem to be incomplete or just wrong.

    Most places in my experience just write their own wrappers/frameworks to generate what they know works, and go to town. I’ve done it too.

And what are the alternatives? JSON schema?

ASN.1? It's even more mature, and the de-facto DER/BER encoding is far more efficient to generate and parse than anything XML-based.

I think the biggest problems with SOAP was the implementations, never the standard. WCF...

An adaptation of PEPPOL (also XML, but at least standardised)?

  • Oh yes, part of the gigantic OASIS UBL (ISO/IEC 19845) and EN 16931 (CEN/TC 434). If young devs today think AI likes to build massive overengineered jargon-filled monstrosities, they should see what they learned it from. Never mind how to get a paycheck, we'll worry about that later, freeing humans from working on this stuff is a humanitarian obligation.