Discussion:
[xquery-talk] what is jsoniq !?
daniela florescu
2015-06-11 01:39:44 UTC
Permalink
Dear all,

by now, some of you must be bored of the current discussions and must ask yourself:
what the heck is this JSONiq.org stuff ?

I will answer in one sentence.

+++++++++++++++++++++++++++++++++++++++++++++++

JSONiq is XQuery with “.” instead of “/“ and “{“ instead of “<“.

++++++++++++++++++++++++++++++++++++++++++++++++

</end-of-story>

Now, JSONiq has been designed by the Zorba team a couple of years back, looking at the
gory details and differences between XML and JSON, and trying to reconcile them, technically AND
politically.

JSONq comes in two flavors: JSONiq++ and JSONiq—.

JSONiq++ is a 100% extension (syntactic and semantic ) of XQuery 3.0 that ALSO includes the JSON concepts: JSON navigation ,
JSON items (objects and arrays) constructors, JSON null and JSON-specific functions.

JSONiq— is a subset (syntactic and semantic) of JSONiq++, restricted ONLY to what JSON is concerned about,
eliminating everything that has to do with XML (e.g. XML navigation and XML node constructors), plus adding a more
aesthetically pleasant syntax for JSON navigation, using “.” .

JSONiq++ is indeed complex, as it inherits both the complexities of XML and JSON, and has to reconcile them somehow.
However clunky that is, it is EXTREMELY useful for cases (like Mulesoft) when you have to integrate between data in XML and JSON.
I think those cases are more and more frequent.

JSONiq— is designed to be aesthetically and semantically pleasing to the JSON-only community — out of which there are plenty, too.
See MongoDB, CouchDb, etc.

=================

The Zorba team spent almost a year trying to study the details of the problem (e.g. different characters sets in JSON vs XML, grammatical conflicts,
uses cases and their aesthetics, etc). That was NOT fun work. There was nothing deep or highly intelligent in that design.

This was stuff that SOMEONE had to do (and I am sorry to say, it was easier to do outside the W3C standardization meeting rooms).

I think that almost anyone who would start with the same design goals will end up with the same solution.


I wish our efforts were not wasted in vain, and everybody will NOT start re-inventing the wheel now.

Plus, it would be really nice if the JSON community would not start investigating the problem of querying semi-strcutured data EXACTLY
from the same point the XML community started in 1996….

That would be really bad.


Best regards
Dana














_______________________________________________
***@x-query.com
http://x-query.com/mail
daniela florescu
2015-06-11 05:01:32 UTC
Permalink
BTW, what I was trying to say after all is that ANY XQuery engine can become an
extremely powerful JSON query processor with almost NO investment.

In Zorba, after we figured out the dirty little problems that are part of JSONiq spec, we needed
something like 1man/month to add JSON support to XQuery.

Minimal investment.

By all means, please do add JSON support to your query processors if you have an XQuery implementation.

Otherwise we’ll be stuck for 30 years in the no mans’ land of silly solutions, e.g. CouchDb, who doesn’t
believe that adding a semantic description to a query language is a useful thing to do, or to MongoDb,
who even more scarier, scales to the level of the UNIVERSE (no kidding, just watch ….



Please don’t let those past 15 years be a waste.


Dana
Post by daniela florescu
Dear all,
what the heck is this JSONiq.org stuff ?
I will answer in one sentence.
+++++++++++++++++++++++++++++++++++++++++++++++
JSONiq is XQuery with “.” instead of “/“ and “{“ instead of “<“.
++++++++++++++++++++++++++++++++++++++++++++++++
</end-of-story>
Now, JSONiq has been designed by the Zorba team a couple of years back, looking at the
gory details and differences between XML and JSON, and trying to reconcile them, technically AND
politically.
JSONq comes in two flavors: JSONiq++ and JSONiq—.
JSONiq++ is a 100% extension (syntactic and semantic ) of XQuery 3.0 that ALSO includes the JSON concepts: JSON navigation ,
JSON items (objects and arrays) constructors, JSON null and JSON-specific functions.
JSONiq— is a subset (syntactic and semantic) of JSONiq++, restricted ONLY to what JSON is concerned about,
eliminating everything that has to do with XML (e.g. XML navigation and XML node constructors), plus adding a more
aesthetically pleasant syntax for JSON navigation, using “.” .
JSONiq++ is indeed complex, as it inherits both the complexities of XML and JSON, and has to reconcile them somehow.
However clunky that is, it is EXTREMELY useful for cases (like Mulesoft) when you have to integrate between data in XML and JSON.
I think those cases are more and more frequent.
JSONiq— is designed to be aesthetically and semantically pleasing to the JSON-only community — out of which there are plenty, too.
See MongoDB, CouchDb, etc.
=================
The Zorba team spent almost a year trying to study the details of the problem (e.g. different characters sets in JSON vs XML, grammatical conflicts,
uses cases and their aesthetics, etc). That was NOT fun work. There was nothing deep or highly intelligent in that design.
This was stuff that SOMEONE had to do (and I am sorry to say, it was easier to do outside the W3C standardization meeting rooms).
I think that almost anyone who would start with the same design goals will end up with the same solution.
I wish our efforts were not wasted in vain, and everybody will NOT start re-inventing the wheel now.
Plus, it would be really nice if the JSON community would not start investigating the problem of querying semi-strcutured data EXACTLY
from the same point the XML community started in 1996….
That would be really bad.
Best regards
Dana
_______________________________________________
***@x-quer
Ihe Onwuka
2015-06-11 05:31:33 UTC
Permalink
Couchdb said they have specifications. They don't feel the need to to share
them because they have satisfied customers. You can read between the lines
as to what that means.
Post by daniela florescu
BTW, what I was trying to say after all is that ANY XQuery engine can become an
extremely powerful JSON query processor with almost NO investment.
In Zorba, after we figured out the dirty little problems that are part of
JSONiq spec, we needed
something like 1man/month to add JSON support to XQuery.
Minimal investment.
By all means, please do add JSON support to your query processors if you
have an XQuery implementation.
Otherwise we’ll be stuck for 30 years in the no mans’ land of silly
solutions, e.g. CouchDb, who doesn’t
believe that adding a semantic description to a query language is a useful
thing to do, or to MongoDb,
who even more scarier, scales to the level of the UNIVERSE (no kidding,
just watch 
.
http://youtu.be/3MNIrKlQp2E
Please don’t let those past 15 years be a waste.
Dana
Post by daniela florescu
Dear all,
by now, some of you must be bored of the current discussions and must
what the heck is this JSONiq.org stuff ?
I will answer in one sentence.
+++++++++++++++++++++++++++++++++++++++++++++++
JSONiq is XQuery with “.” instead of “/“ and “{“ instead of “<“.
++++++++++++++++++++++++++++++++++++++++++++++++
</end-of-story>
Now, JSONiq has been designed by the Zorba team a couple of years back,
looking at the
Post by daniela florescu
gory details and differences between XML and JSON, and trying to
reconcile them, technically AND
Post by daniela florescu
politically.
JSONq comes in two flavors: JSONiq++ and JSONiq—.
JSONiq++ is a 100% extension (syntactic and semantic ) of XQuery 3.0
that ALSO includes the JSON concepts: JSON navigation ,
Post by daniela florescu
JSON items (objects and arrays) constructors, JSON null and
JSON-specific functions.
Post by daniela florescu
JSONiq— is a subset (syntactic and semantic) of JSONiq++, restricted
ONLY to what JSON is concerned about,
Post by daniela florescu
eliminating everything that has to do with XML (e.g. XML navigation and
XML node constructors), plus adding a more
Post by daniela florescu
aesthetically pleasant syntax for JSON navigation, using “.” .
JSONiq++ is indeed complex, as it inherits both the complexities of XML
and JSON, and has to reconcile them somehow.
Post by daniela florescu
However clunky that is, it is EXTREMELY useful for cases (like Mulesoft)
when you have to integrate between data in XML and JSON.
Post by daniela florescu
I think those cases are more and more frequent.
JSONiq— is designed to be aesthetically and semantically pleasing to the
JSON-only community — out of which there are plenty, too.
Post by daniela florescu
See MongoDB, CouchDb, etc.
=================
The Zorba team spent almost a year trying to study the details of the
problem (e.g. different characters sets in JSON vs XML, grammatical
conflicts,
Post by daniela florescu
uses cases and their aesthetics, etc). That was NOT fun work. There
was nothing deep or highly intelligent in that design.
Post by daniela florescu
This was stuff that SOMEONE had to do (and I am sorry to say, it was
easier to do outside the W3C standardization meeting rooms).
Post by daniela florescu
I think that almost anyone who would start with the same design goals
will end up with the same solution.
Post by daniela florescu
I wish our efforts were not wasted in vain, and everybody will NOT start
re-inventing the wheel now.
Post by daniela florescu
Plus, it would be really nice if the JSON community would not start
investigating the problem of querying semi-strcutured data EXACTLY
Post by daniela florescu
from the same point the XML community started in 1996
.
That would be really bad.
Best regards
Dana
_______________________________________________
http://x-query.com/mailman/listinfo/talk
Loading...