What is JSONC? Are JSONC and JSON-C different?

Json

Json Problem Overview


Recently came across the term JSONC in a YouTube API. I browsed the Web, but found nothing much about it. Can someone explain whether these two are the same or different?

Json Solutions


Solution 1 - Json

There is also jsonc aka "JSON with comments", created by Microsoft and used by Visual Studio Code. The logic for it can be found here, alas without exhaustive specification (though I'd like to be proven wrong on this).

On top of that there is this project with an actual specification which is also called jsonc, but also does far more than just adding comments.

While there definitely is a use for these technologies, some critical thinking is advised. JSON containing comments is not JSON.

Solution 2 - Json

JSON-C seems to just be a variation of JSON mainly targeted at C development. I.e., from the open source docs, "JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C, output them as JSON formatted strings and parse JSON formatted strings back into the C representation of JSON objects."ref^1

From the YouTube API perspective (specifically, version 2, not the new version 3), The JSON-C response is just a condensed version of the JSON response (removing "duplicate, irrelevant or easily calculated values").ref^2

Why would the JSON response have "duplicate, irrelevant or easily calculated values" values anyway? Because it is converting the original ATOM XML format directly to JSON in a loseless conversion. You can find out more details here.

However, I would suggest using version 3 of the YouTube Data API. It is much easier to use. =)

Solution 3 - Json

JSONC is an open-source, Javascript API created by Tomás Corral Casas for reducing the size of the amount of JSON data that is transported between clients and servers. It uses two different approaches to achieve this, JSONC.compress and JSONC.pack. More information can be found on the JSONC Github page:

https://github.com/tcorral/JSONC

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionMandeep JainView Question on Stackoverflow
Solution 1 - JsonZylView Answer on Stackoverflow
Solution 2 - JsoncodingjeremyView Answer on Stackoverflow
Solution 3 - Jsonjames.garrissView Answer on Stackoverflow