====== JavaScript Object Notation (JSON) ======
[[dido:99_annexes:annex-b-terms-and-definitions:start|Go up to Terms and Definitions]]
===== Discussion =====
JavaScript Object Notation (JSON) provides a lightweight, text-based syntax for structured data interchange. JSON represents data using objects, arrays, names, values, strings, numbers, booleans, and null values.
JSON supports data exchange across programming languages, [[dido:99_annexes:annex-b-terms-and-definitions:a:api|APIs]], message formats, configuration files, event payloads, reports, and implementation artifacts.
JSON differs from [[dido:99_annexes:annex-b-terms-and-definitions:s:schema|schema]]. JSON provides a data-interchange syntax. A schema defines structure, permitted values, relationships, and constraints for a defined representation context. JSON Schema, when used, constrains JSON documents.
JSON also differs from [[dido:99_annexes:annex-b-terms-and-definitions:s:semantic|semantics]]. JSON syntax alone does not establish domain meaning. JSON expresses semantic content when names, values, structures, schemas, vocabularies, rules, and traceability preserve defined domain meaning.
===== Definition =====
//lightweight, text-based syntax for structured data interchange using objects, arrays, names, and values//
===== Source =====
ECMA-404 The JSON Data Interchange Syntax; specialized for use in the FX Demo Reference Architecture.
===== Note =====
JSON is a syntax, not a semantic model. A JSON document gains domain meaning from its schema, vocabulary, field definitions, type system, rules, API contract, report model, or other authoritative semantic source.
===== Example =====
A JSON trade message represents selected FX trade information as name-value pairs:
{
"tradeIdentifier": "Trade-123",
"currencyPair": "EUR/USD",
"notionalAmount": 1000000,
"tradeDate": "2026-07-07",
"settlementDate": "2026-07-09"
}
The JSON syntax represents the data. The associated schema, type system, conceptual model, and business rules define the meaning of ''tradeIdentifier'', ''currencyPair'', ''notionalAmount'', ''tradeDate'', and ''settlementDate''.
----
© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.