Sorry for the delay - was on a break from HN<p>Yes, I think you are right, the availability of XML&#x2F;ws-* acted as a magnet for people who required extensive schemas, etc.<p>I agree that JSON is a great starting place for the rest of us who don&#x27;t have such immediate needs for complexity and get can by with it. But I think eventually software growth then pushes them to more complex interchange format, e.g. JSON schema.<p>I think that there is progress, with JSON on the simpler side, and now newer formats like ProtoBufs, Thrift and mechanisms such as RPC - we do seem to be learning from the past. It does feel that perhaps we do swing from one extreme to another - first RPC was great and CORBA came and went, following this the perception was that it was utterly unsuitable for anything, until perhaps the introduction of ProtoBufs, Thift, JSON-RPC and so on. I personally think it can be incredibly useful, but deciding on just the right features to keep things manageable is incredibly difficult (more so than the tech itself I believe).<p>We&#x27;re no fans of JSON-Schema either, I&#x27;ve thought about it a few times but it feels over-complicated. Instead we&#x27;ve settled&#x2F;forked a criminally overlooked system called Barrister RPC (<a href="http:&#x2F;&#x2F;barrister.bitmechanic.com&#x2F;" rel="nofollow">http:&#x2F;&#x2F;barrister.bitmechanic.com&#x2F;</a>). This just supports basic JSON types, structs created from their aggregate, and optional nullability. It has worked great so far, although we may expand shortly to add more numeric types. You can try it live at <a href="http:&#x2F;&#x2F;www.stackhut.com" rel="nofollow">http:&#x2F;&#x2F;www.stackhut.com</a> (source at <a href="http:&#x2F;&#x2F;www.github.com&#x2F;StackHut" rel="nofollow">http:&#x2F;&#x2F;www.github.com&#x2F;StackHut</a>) - would love to hear your thoughts re the schema&#x2F;RPC layer.