[xquery-talk] [xml-dev] Mistakes made in the design of XQuery 3.1
dflorescu at me.com
Wed May 13 01:55:43 PDT 2015
> The issue with many JSON people is that they don't seem to acknowledge the need for interoperability with XML so the utility of a "bilingual language" probably doesn't resonate.
this is where the JSONiq authors (me included) we did spent a HUGE amount of energy for design: in the following compromise:
(1) try to find a superset of XQuery 3.0 (so still stay in the XML world), which can handle BOTH XML and JSON.
This resulting language was not always pretty to look at, as you can imagine, because it inherited the syntactic
quirks of BOTH XML and JSON, yet it is very powerful and useful, as you can imagine, if in an application you need to mix and match both.
but in the same time, this billingual (expressive-power rich, but not pretty to look at, and not simple) language:
(b) was able to be syntactically subsetted to a VERY SIMPLE language for querying/processing JSON-only. This subset was maintaining the “good” parts of XQuery
(composability, declarativity, functional nature, optimizability, expressive power), while being aesthetically pleasing to a JSON-only crowd .
So I don’t agree with you. With JSONiq, we did prove that it IS possible to serve BOTh community with one underlying “virtual machine”, if you want, and several syntaxes,
according to the “beauty is in the eye of the beholder” principle.
> Without wishing to appear informed can I ask a question.
> Was the Crockfordesque faction represented in the composition of the WG or was it (of necessity) a bunch of XML people talking about how to support JSON?
I wasn’t there, so I cannot tell for sure.
But, after spending 16 years in the W3C, I guess that , as usual, the crowd was dominated by XML people who pay little attention to where the world goes,
outside their little XML narrow interest.
That’s what I witnessed during my 16 years tenure within W3C XQuery Working Group.
And it wasn’t either productive, not funny.
More information about the talk