Skip to main content

Helper functions for working with Senzing JSON

Project description

sz-sdk-json-type-definition

If you are beginning your journey with Senzing, please start with Senzing Quick Start guides.

You are in the Senzing Garage where projects are "tinkered" on. Although this GitHub repository may help you understand an approach to using Senzing, it's not considered to be "production ready" and is not considered to be part of the Senzing product. Heck, it may not even be appropriate for your application of Senzing!

:warning: WARNING: sz-sdk-json-type-definition is still in development :warning: _

At the moment, this is "work-in-progress" with Semantic Versions of 0.n.x. Although it can be reviewed and commented on, the recommendation is not to use it yet.

Synopsis

The Senzing sz-sdk-json-type-definition uses JSON Type Definition to model the JSON that is returned from Senzing SDK calls.

Code generated from this model improves compile-time type checking and code-completion in Integrated Development Environments (IDE) (e.g. "VSCode's IntelliSense").

Overview

By using the code generated by JSON Type Definition, JSON returned by the Senzing SDK calls are easier to parse. Examples:

  1. Python - main.py
  2. Go - main.go
  3. Java - Main.java
  4. Typescript - main.ts
  5. C-sharp Program.cs

The actual specification is senzingsdk-RFC8927.json.

From this specification, code is generated for the following languages:

  1. csharp
  2. go
  3. java
  4. python
  5. ruby
  6. rust
  7. typescript

Use

  1. Python comparison:
    1. Here's how to parse a Senzing JSON response without senzing-json:

      result = sz_engine.get_virtual_entity_by_record_id(record_keys, flags)
      feature_list = result.get("RESOLVED_ENTITY", {}).get("FEATURES", {}).get("NAME", [])
      
      1. Note that the JSON keys and datatypes of the values must be known ahead of time. Also, this method is subject to typographical errors.
    2. Here's how to parse a Senzing JSON response with senzing-json:

      result = sz_engine.get_virtual_entity_by_record_id(record_keys, flags)
      virtual_entity = SzEngineGetVirtualEntityByRecordIDResponse.from_json_data(result)
      feature_list = virtual_entity.resolved_entity.features["NAME"]
      
      1. When using an IDE, the fields and datatypes are supplied by the IDE's code-completion. Typos will be flagged by the IDE.

References

  1. Development
  2. Errors
  3. Examples
  4. Packages
    1. Go package reference

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

senzing_typedef-0.2.11.tar.gz (3.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

senzing_typedef-0.2.11-py3-none-any.whl (149.5 kB view details)

Uploaded Python 3

File details

Details for the file senzing_typedef-0.2.11.tar.gz.

File metadata

  • Download URL: senzing_typedef-0.2.11.tar.gz
  • Upload date:
  • Size: 3.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for senzing_typedef-0.2.11.tar.gz
Algorithm Hash digest
SHA256 8f13581e21d2637355020358729363d53790edda5e37cb18955605ceeeca102c
MD5 78cf3b4f46615dceb8e7ab88ebd230e1
BLAKE2b-256 6be50f77721ea497adddbaf5d880d6a8857ece50fb08a33e5651ca32808c6fc6

See more details on using hashes here.

File details

Details for the file senzing_typedef-0.2.11-py3-none-any.whl.

File metadata

File hashes

Hashes for senzing_typedef-0.2.11-py3-none-any.whl
Algorithm Hash digest
SHA256 766cde86d2950cb659569a754d543313985e5f38fff1bc613d04a4da6c97a248
MD5 1db3a8cd01c00b363578000c0d7d2b86
BLAKE2b-256 4a5ba62016c9252c3f06f9fba5b8e105f9799ab0e5ee1e78ac986507351d32a6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page