JSON Essentials™ for COM/ActiveX - Universal JSON toolkit for Windows

Current version: 1.1.0
Released on: 2021.09.13

Overview | Features | Where to use | Code samples | JSON Schema | Compliance | Future perspectives

1 Overview

JSON Essentials™ for COM/ActiveX is a language independent Application Programming Interface (API) library for rapid implementation of the most common JSON use cases with focus on exceptional standard compliance, performance, stability and simplicity. It can be used in any programming language and development environment on the Windows platform that supports COM/ActiveX API standard, including but not limited to the mainstream programming languages like C#, Visual Basic, C/C++, Delphi, Java, JavaScript, VB Script, TypeScript, PHP, Python, Matlabetc. It's native and flexible support of HTTP/HTTPS protocols makes it immediately ready for complex JSON REST applications.

JSON Essentials™ for COM/ActiveX provides different licensing options and product configurations that allow individual developers, non-profit and academic organizationsto use the it for free, and allow commercial users to get only the needed functionality. Make your license choice.

2 Features

Loading JSON from:

  • string
  • file
  • stream
  • HTTP response
  • language specific objects

Writing JSON to:

  • file
  • stream
  • HTTP request

Encoding support:

  • UTF-8
  • UTF-16
  • UTF-32
  • Binary Order Mark (BOM) handling

JSON formatting options:

  • indentation
  • spaces style and configuration
  • newlines style and configuration
  • escapes configuration

JSON Schema collection:

  • manual adding
  • unresolved schema request
  • custom schema request callback
  • lookup
  • removal
  • clearing

JSON Schema operations:

  • instance validation
  • instance annotation
  • unknown schema resolving
  • schema standard identification

JSON selectors:

  • JSON pointer
  • relative JSON pointer
  • compiled selector expressions

Non-functional:

  • language independent
  • lightweight
  • exceptionally fast
  • strict standard compliant
  • well documented
  • thoroughly tested

JSON DOM operations:

  • JSON code for a node
  • traversal
  • addition
  • removal
  • clearing
  • lookup
  • deep comparison
  • node saving
  • selecting
  • direct DOM values access
  • node annotation data

HTTP capabilities:

  • HTTP/HTTPS
  • HTTP method
  • GET query parameters
  • custom headers
  • x-www-form-urlencoded form data
  • multipart/form-data
  • HTTP timeouts
  • collecting response status and headers
  • processing response body as binary,
    text or JSON
  • one call for making a JSON request
    and loading JSON DOM a from response

Didn't find a need feature? Suggest it!

2 Where to use

JSON data format has become the primary format for data exchange in most modern systems because it's simple, lightweight, cross-platform, but still powerful, thus the scope of application of JSON Essentials™ for COM/ActiveX is limited by one's imagination only. From keeping local configuration files in JSON format, organizing small datasets in JSON, to communicating with Web services that offer JSON API endpoints, etc. In the world of distributed systems and Service Oriented Architectures a simple to use, but still functional, fast and reliable JSON handling using JSON Essentials™ for COM/ActiveX can not only save time on development but also save cost on data processing, especially in cloud environments where CPU cycles directly translate to dollar amounts.

Here are just a few well-know major Web services to mention that require JSON as the main or the only mean of communication with the external world, and JSON Essentials™ for COM/ActiveX can handle all that for your Windows applications, services and scripts:

3 Code samples

JScript/JavaScript: Create DOM | Parse DOM | Traverse DOM | Format JSON | Select node | Fast select node | Loading JSON file | Loading JSON code | Object to JSON DOM and Direct DOM Access | HTTP GET JSON request | HTTP PUT JSON request | Validate JSON against schema | Handle schema request | Annotate JSON against schema

C#: Create DOM | Parse DOM | Traverse DOM | Format JSON | Select node | Fast select node | Loading JSON file | Loading JSON code | Object to JSON DOM and Direct DOM Access | HTTP GET JSON request | HTTP PUT JSON request | Validate JSON against schema | Schema request via callback | Schema request via delegate | Annotate JSON against schema

Visual Basic: Create DOM | Parse DOM | Traverse DOM | Format JSON | Select node | Fast select node | Loading JSON file | Loading JSON code | Object to JSON DOM and Direct DOM Access | HTTP GET JSON request | HTTP PUT JSON request | Validate JSON against schema | Handle schema request | Annotate JSON against schema

4 JSON Schema support

JSON Essentials™ for COM/ActiveX v1.1.0 supports only Draft-07 JSON Schema standard for both validation and annotation. At the moment of its release it passes all required JSON Schema Test Suite tests for Draft-07. However it is not guaranteed that future updates in JSON Schema Test Suite released after will pass. In order to mititage such risks each package of JSON Essentials™ for COM/ActiveX includes a copy of the latest snapshot of the tests available right before its release for validating its functionality.

Support of newer standards Draft-2019-09 and Draft-2020-12 is currently under development.

5 Compliance

JSON Essentials™ for COM/ActiveX is compliant with:

6 Future perspectives

Despite a humble start there is much more yet to be uncovered. Here is the brief outlook on what is getting ready to be released soon and what's in development: