Trustable Compliance Report#

Item status guide#

Each item in a Trustable Graph is scored with a number between 0 and 1. The score represents aggregated organizational confidence in a given Statement, with larger numbers corresponding to higher confidence. Scores in the report are indicated by both a numerical score and the colormap below:

1.00   0.00

The status of an item and its links also affect the score.

Unreviewed items are indicated by a cross in the status column. The score of unreviewed items is always set to zero.

Suspect links are indicated by a cross in the status column. The contribution to the score of a parent item by a suspiciously linked child is always zero, regardless of the child’s own score.

Compliance for AOU#

This presents the compliance for the Assumptions of Use (AOU) in tabular form.

Item

Summary

Score

Status

AOU-01

The integrator shall report problems with nlohmann/json’s implementation to the upstream nlohmann/json project whenever a problem is detected.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-02

The integrator shall ensure that the build environment used for nlohmann/json is supplied with consistent dependencies in every integrating system.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-03

The integrator shall ensure that integrator-controlled mirrors of the dependencies are persistently and accessibly stored as long as the library nlohmann/json is used.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-04

The integrator shall ensure that exceptions are properly handled or turned off, whenever nlohmann/json is used.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-05

The integrator shall ensure that input is encoded as UTF-8 (as required by RFC8259) and that exceptions thrown in case other string formats are used are properly handled

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-06

The integrator shall ensure that brace initialization (e.g. json j{true};) is not used with the types basic_json, json, or ordered_json, unless an object or array is created.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-07

The integrator shall ensure that exceptions, which are expected during parsing with default parameters, are properly handled whenever the input is no valid JSON.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-08

The integrator shall ensure that all necessary source files and built tools are mirrored, e.g. using a built server without internet access, as long as nlohmann/json is actively used.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-09

The integrator shall ensure that advanced warning indicators for misbehaviours are identified, and monitoring mechanisms are specified, verified and validated based on analysis.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-10_COMBINED

The integrator shall evaluate the provided evidence and supplement it where necessary, whenever the trustability documentation of nlohmann/json is reviewed.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-14

The integrator shall ensure that nlohmann/json library is built with tools from the provided matrix specification, whenever nlohmann/json is used. (not yet provided)

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-15

The integrator shall maintain mirrors for all code and tools utilized in testing as long as nlohmann/json is actively used.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-16

The integrator shall use C++ versions and compilers that are tested in the CI pipeline, whenever nlohmann/json is used.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-17

The integrator shall identify misbehaviours for nlohmann/json, define appropriate mitigations, and ensure that these mitigations are thoroughly validated, whenever using nlohmann/json.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-18

The integrator shall ensure that monitoring data from deployed software is accurately captured, securely stored, and well-documented for analysis, as long as nlohmann/json is actively used.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-19

The integrator shall analyze monitoring data systematically to detect trends and identify issues, as long as nlohmann/json is actively used.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-20

The integrator shall ensure that the keys within an object are unique, whenever an object is to be parsed by nlohmann/json.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-21

The integrator shall ensure that a string does not contain escaped unpaired utf-16 surrogate characters, and that exceptions are properly handled, whenever a string is to be parsed by nlohmann/json.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-22

The integrator shall ensure that numbers are written in base 10, and that exceptions and misbehaviours in case that any other base is used are properly handled and mitigated, whenever a number is parsed by nlohmann/json.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-23

The integrator shall ensure that data are complete and error-free, whenever they are transmitted to nlohmann/json.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-24

The integrator shall ensure that the data do not change during reading, whenever transmitted to nlohmann/json.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-25

The integrator shall convince themselves that the behaviour of the used C++ standard library is known, verified and validated.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-26

The integrator shall convince themselves that the misbehaviours of the C++ standard library and mitigations are known, verified and validated.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-27

The integrator shall ensure that ChangeLog.md is updated whenever the local mirror of nlohmann/json is updated.

0.00

⨯ Item Reviewed
✔ All Children Linked

AOU-28

The integrator shall ensure that the known open bugs of nlohmann/json are regularly reviewed on their impact on the use of the documented version as long as the library is actively used.

0.00

⨯ Item Reviewed
✔ All Children Linked

Compliance for JLEX#

This presents the compliance for the JSON-Library Expectations (JLEX) in tabular form.

Item

Summary

Score

Status

JLEX-01

The requirement regarding JSON Validation is fulfilled.

0.00

⨯ Item Reviewed
⨯ All Children Linked

JLEX-02

The requirement regarding JSON Deserialization is fulfilled.

0.00

⨯ Item Reviewed
⨯ All Children Linked

Compliance for JLS#

This presents the compliance for the JSON-Library Statements (JLS) in tabular form.

Item

Summary

Score

Status

JLS-01

The CI pipeline of the main branch executes on each pull request (opened, reopened, synchronized) the integration test suite, and failures in these runs are investigated by contributors.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-02

Fuzz testing is used in the original nlohmann/json repository (https://github.com/nlohmann/json) to uncover edge cases and failure modes throughout development. (https://github.com/nlohmann/json/blob/develop/tests/fuzzing.md)

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-03

Automated tests are reviewed by a Subject Matter Expert to verify they test the properties they claim to.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-04

External dependencies are checked for potential security vulnerabilities with each pull request to main. Merging is blocked until all warnings are resolved.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-05

The OSS nlohmann/json is widely used, actively maintained and uses github issues to track bugs and misbehaviours.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-06

Changes to the code (main branch) are applied only after code review and passing of all pipelines.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-07

Main branch is protected, i.e. no direct commits are possible.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-08

Each statement is scored based on SME reviews or automatic validation functions. (TODO)

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-09

Scores are reasonably, systematically and repeatably accumulated. (TODO)

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-10

Every release includes source code, build instructions, tests and attestations. (TODO: Test result summary)

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-11

A score based on outstanding, fixed and mitigated faults is calculated based on github issues in nlohmann/json.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-12

The S-Core change process management is followed.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-13

The S-Core methodologies are followed.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-14

The SHA value of the library in use coincides with the SHA value provided by Niels Lohmann for that version.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-16

A list of tests, which is extracted from the test execution, is provided, along with a list of test environments.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-17

A github workflow calculates the fraction of expectations covered by tests (TODO).

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-18

Results from tests are accurately captured.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-19

All components, dependencies and tools are listed in a manifest.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-20

A github workflow saves the history of scores in the trustable graph to derive trends.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-21

A score is calculated based on the number of mirrored and unmirrored things. (TODO)

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-22

The github workflow executes the unit tests daily and saves the results as time-series data.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-23

The Eclipse S-CORE organization mirrors the nlohmann/json project in a github fork.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-24

The nlohmann/json library recognizes malformed JSON and returns an exception.

0.00

⨯ Item Reviewed
⨯ All Children Linked

JLS-25

Malicious code changes are mitigated by code reviews, adhering to Eclipse S-core contribution procedures and vigilance from the open-source community.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-26

Pipeline execution results are analyzed in nlohmann/json.

0.00

⨯ Item Reviewed
✔ All Children Linked

JLS-27

The test coverage for this version of nlohmann/json is monitored using Coveralls and is not decreasing over time, unless reasonably justified.

0.00

⨯ Item Reviewed
✔ All Children Linked

Compliance for NJF#

This presents the compliance for the No JSON Faults (NJF) in tabular form.

Item

Summary

Score

Status

NJF-01

The service accepts the literal name null.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-02

The service accepts the literal name true.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-03

The service accepts the literal name false.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-04

The service does not accept any other literal name.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-05

The service accepts and rejects arrays according to RFC8259 §5.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-05.1

The service accepts the empty array.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-05.2

The service accepts the non-empty arrays.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-05.3

If every value candidate of a properly bounded array is accepted as singleton, then the service accepts the array.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-05.4

The service does not accept any improperly bounded arrays.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-05.5

The service does not accept arrays with improper values.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-05.6

The service accepts nested arrays.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-05.6.0

The acceptance of nested arrays does not depend on the depth of nesting.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-05.7

The service does only accept comma as value separator.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-05.7.1

The service does accept comma as value separator.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-05.7.2

The service does not accept any other value separator.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06

The service accepts and rejects objects according to RFC8259 §4.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-06.1

The service accepts the empty object.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.2

The service does not accept improperly bounded objects.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.3

The service accepts the non-empty objects.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.4

The admissible members of an object have the form name : value.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-06.4.1

If the service recognises the name candidate as string, then it accepts the name candidate.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.4.2

The service does not accept any other token as name.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.4.3

If the service accepts the value-candidate as a singleton, then the value-candidate is accepted.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.5

The service does not accept objects with improper members.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-06.5.1

If the service does not accept any name candidate as singleton, then the service does not accept the object candidate.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.5.2

If the service does not accept any value candidate as singleton, then the service does not accept the object candidate.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.6

The service accept the nested objects.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.6.0

The acceptance of nested objects does not depend on the depth of nesting.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.7

The service does only accept comma as member separator.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-06.7.1

The service accepts comma as member separator.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-06.7.2

The service does not accept any other member separator.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-07

The service accepts and rejects strings according to RFC8259 §7.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-07.1

The service does accept empty string.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-07.2

The service does not accept the improperly bounded strings.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-07.3

The service does not accept unescaped control characters.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-07.4

The service does accept the escaped control characters.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-07.5

The service accepts UTF-16 surrogate pairs.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-07.6

The service does accept the non-empty strings.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-07.7

The service does not accept escaped invalid characters.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-07.8

The service does not accept single unpaired utf-16 surrogates.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-07.9

The service does not accept unescaped UTF-16 surrogate pairs.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-08

The service accepts numbers according to RFC8259 §6.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-08.1

The service does accept integers within the limits of 64-bit double.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-08.2

The service does accept integers according to IEEE 754 binary64.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-08.3

The service does not accept NaN, infinity.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-08.4

The service does accept e or E for numbers with exponent within the bounds of double.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-08.5

The service does not accept u0415 and u0436 (cyrillic e and E) as exponent signs in numbers with exponent.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-08.6

The service does not accept invalid syntax for numbers.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-08.7

The service does accept decimal points in numbers within the bounds of double.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-08.8

The service does not accept leading zeroes.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-08.9

The service does not accept any other digit symbol than 0-9.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-12

The service decodes UTF-8 data.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-12.1

The service rejects malformed UTF-8 data.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-12.2

The service rejects “overlong sequences”.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-12.3

The service rejects single escaped and unescaped, and paired unescaped utf-16 surrogates.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-12.5

The service accepts Non-Characters.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-12.6

The service accepts well-formed UTF-8 data.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-13

The service accepts JSON data consisting of combinations of the data types.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-14

The service accepts a single complete UTF-8 byte order mark at the beginning of the input only.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NJF-14.1

If the service accepts an input containing no BOM, then it accepts a single UTF-8 byte order mark followed by that input.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-14.2

The service does not accept multiple UTF-8 byte order marks.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-14.3

The service does not accept incomplete or perturbed UTF-8 byte order marks within the first three characters of the input.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-14.4

The service does not accept UTF-16 and UTF-32 byte order marks instead of the UTF-8 byte order mark.

0.00

⨯ Item Reviewed
✔ All Children Linked

NJF-14.5

The service does not accept UTF-8 byte order mark outside of a string and outside of the first three characters of the input.

0.00

⨯ Item Reviewed
✔ All Children Linked

Compliance for NPF#

This presents the compliance for the No Parsing Faults (NPF) in tabular form.

Item

Summary

Score

Status

NPF-01

The service ignores the presence of a byte order mark.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NPF-01.1

The service ignores the presence of a single UTF-8 byte order mark at the very beginning of the input.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-01.2

The service does not parse multiple UTF-8 byte order marks at the beginning of the input and throws an exception.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-01.3

The service does not parse UTF-8 byte order marks outside of a string and the first three characters of the input, and throws an exception.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-01.4

The service does not parse UTF-16 and UTF-32 byte order mark instead of an UTF-8 byte order mark, and throws an exception.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-01.5

The service does not parse partial and perturbed UTF-8 byte order marks within the first three characters of the input and throws an exception.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02

The service parses numbers according to RFC8259.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NPF-02.1

The service parses integers without exponent within the precision of int64_t.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.10

The service ignores trailing zeroes after the decimal point.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.11

The service parses numbers within the 64-bit double range but outside of the double precision without throwing an exception and without guarantee of precision.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.12

The service ignores capitalisation of the exponent.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.2

The service parses integers with exponent within the precision of 64-bit double.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.3

The service parses floating point values without exponent within the precision of 64-bit double.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.4

The service parses floating point values with exponent within the precision of 64-bit double.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.5

The service ignores leading zeroes in the exponent.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.6

The service parses integers within IEEE 754-2008 binary64.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.7

The service ignores leading and trailing whitespace.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.8

The service ignores one singular leading plus of the exponent.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-02.9

The service parses floating point numbers within IEEE 754-2008 binary64 standard.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-03

The service parses strings according to RFC8259.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NPF-03.1

The service ignores leading and trailing whitespace.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-03.2

The service parses escaped characters in the basic multilingual plane.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-03.3

The service ignores capitalisation in escaped hexadecimal unicode.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-03.4

The service parses all unescaped utf-8 characters except quotation mark, reverse solidus and the control characters.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-03.5

The service parses \, \/, \b,\f, \n, \r, \t and escaped quotation marks.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-03.6

The service parses the empty string.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-03.7

The service parses non-empty strings.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-04

The service parses literal names “true”, “false” and “null” according to RFC8259.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NPF-04.1

The service ignores leading and trailing whitespace.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-04.2

The service parses the literal name true.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-04.3

The service parses the literal name false.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-04.4

The service parses the literal name null.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-05

The service parses arrays according to RFC8259.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NPF-05.1

The service ignores leading and trailing whitespace for each value.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-05.2

The service parses empty arrays.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-05.3

The service parses non-empty arrays.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-06

The service parses objects according to RFC8259.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NPF-06.1

The service ignores leading and trailing whitespace for name and value of each member.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-06.2

The service parses duplicate names without error and reports the last member with that name only.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-06.3

The service parses empty objects.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-06.4

The service parses non-empty objects.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-07

The service parses well-formed UTF-8 encoded data only.

0.00

⨯ Item Reviewed
⨯ All Children Linked

NPF-07.1

The service parses UTF-8 encoded data.

0.00

⨯ Item Reviewed
✔ All Children Linked

NPF-07.2

The service throws an exception on ill-formed UTF-8 data.

0.00

⨯ Item Reviewed
✔ All Children Linked

Compliance for PJD#

This presents the compliance for the Parse JSON Data (PJD) in tabular form.

Item

Summary

Score

Status

PJD-01

The service provides implementations that parses JSON texts, which ignores the presence of a byte order mark rather than treating it as an error.

0.00

⨯ Item Reviewed
✔ All Children Linked

PJD-02

The service transforms a JSON text into a C++ representation using C++ containers (for arrays and objects) and primitive datatypes (for strings, numbers, boolean, null).

0.00

⨯ Item Reviewed
✔ All Children Linked

PJD-03

The service parses all texts that conform to the JSON grammar.

0.00

⨯ Item Reviewed
⨯ All Children Linked

Compliance for TA#

This presents the compliance for the Trustable Assertions (TA) in tabular form.

Item

Summary

Score

Status

TA-ANALYSIS

Collected data from tests and monitoring of deployed software is analysed according to specified objectives.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-BEHAVIOURS

Expected or required behaviours for nlohmann/json library are identified, specified, verified and validated based on analysis.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-CONFIDENCE

Confidence in nlohmann/json library is measured based on results of analysis.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-CONSTRAINTS

Constraints on adaptation and deployment of nlohmann/json library are specified.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-DATA

Data is collected from tests, and from monitoring of deployed software, according to specified objectives.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-FIXES

Known bugs or misbehaviours are analysed and triaged, and critical fixes or mitigations are implemented or applied.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-INDICATORS

Advanced warning indicators for misbehaviours are identified, and monitoring mechanisms are specified, verified and validated based on analysis.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-INPUTS

All inputs to nlohmann/json library are assessed, to identify potential risks and issues.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-ITERATIONS

All constructed iterations of nlohmann/json library include source code, build instructions, tests, results and attestations.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-METHODOLOGIES

Manual methodologies applied for nlohmann/json library by contributors, and their results, are managed according to specified objectives.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-MISBEHAVIOURS

Prohibited misbehaviours for nlohmann/json library are identified, and mitigations are specified, verified and validated based on analysis.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-RELEASES

Construction of nlohmann/json library releases is fully repeatable and the results are fully reproducible, with any exceptions documented and justified.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-SUPPLY_CHAIN

All sources for nlohmann/json library and tools are mirrored in our controlled environment.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-TESTS

All tests for nlohmann/json library, and its build and test environments, are constructed from controlled/mirrored sources and are reproducible, with any exceptions documented.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-UPDATES

nlohmann/json library components, configurations and tools are updated under specified change and configuration management controls.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TA-VALIDATION

All specified tests are executed repeatedly, under defined conditions in controlled environments, according to specified objectives.

0.00

⨯ Item Reviewed
⨯ All Children Linked

Compliance for TIJ#

This presents the compliance for the Throw Ill-Formed JSON (TIJ) in tabular form.

Item

Summary

Score

Status

TIJ-01

The parsing service throws an exception on ill-formed literal names.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TIJ-01.1

The service throws an exception on capitalised literal names.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-01.2

The service throws an exception on any other than the three literal names true, false, null.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-02

The parsing service throws an exception on ill-formed numbers.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TIJ-02.1

The service throws an exception on leading plus.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-02.2

The service throws an exception on leading zeroes.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-02.3

The service throws an exception on NaN, infinity.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-02.4

The service throws an exception on U+0415 and U+0436 instead of U+0045 or U+0065.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-02.5

The service throws an exception on invalid number syntax.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-03

The parsing service throws an exception on ill-formed strings.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TIJ-03.1

The service throws an exception on unescaped control characters.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-03.2

The service throws an exception on unpaired utf-16 surrogates.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-03.3

The service throws an exception on improperly bounded strings.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-03.4

The service throws an exception on escaped invalid characters.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-03.5

The service throws an exception on incorrect surrogate pairs.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-04

The parsing service throws an exception on ill-formed arrays.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TIJ-04.1

The service throws an exception on improperly bounded arrays.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-04.2

The service throws an exception on improper values within a properly bounded array.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-04.3

The service throws an exception on improper value separators.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-05

The parsing service throws an exception on ill-formed objects.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TIJ-05.1

The service throws an exception on improperly bounded objects.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-05.2

The service throws an exception if a non-string is used as name of any member.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-05.3

The service throws an exception if an improper string is used as name of any member.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-05.4

The service throws an exception if any member has an improper value.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-05.5

The service throws an exception on improper member separators.

0.00

⨯ Item Reviewed
✔ All Children Linked

TIJ-06

The service recognises ill-formed byte-order marks and throws an exception.

0.00

⨯ Item Reviewed
⨯ All Children Linked

Compliance for TRUSTABLE#

This presents the ultimate trustability score for nlohmann/json.

Item

Summary

Score

Status

TRUSTABLE-SOFTWARE

This release of JSON-Library also reffered in the documentation as nlohmann/json library is Trustable.

0.00

⨯ Item Reviewed
⨯ All Children Linked

Compliance for TT#

This presents the compliance for the Trustable Tenets (TT) in tabular form.

Item

Summary

Score

Status

TT-CHANGES

nlohmann/json library is actively maintained, with regular updates to dependencies, and changes are verified to prevent regressions.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TT-CONFIDENCE

Confidence in nlohmann/json library is achieved by measuring and analysing behaviour and evidence over time.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TT-CONSTRUCTION

Tools are provided to build nlohmann/json library from trusted sources (also provided) with full reproducibility.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TT-EXPECTATIONS

Documentation is provided, specifying what nlohmann/json library is expected to do, and what it must not do, and how this is verified.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TT-PROVENANCE

All inputs (and attestations for claims) for nlohmann/json library are provided with known provenance.

0.00

⨯ Item Reviewed
⨯ All Children Linked

TT-RESULTS

Evidence is provided to demonstrate that nlohmann/json library does what it is supposed to do, and does not do what it must not do.

0.00

⨯ Item Reviewed
⨯ All Children Linked

Compliance for WFJ#

This presents the compliance for Well Formed JSON (WFJ) in tabular form.

Item

Summary

Score

Status

WFJ-01

The service checks the well-formedness of the literal names.

0.00

⨯ Item Reviewed
⨯ All Children Linked

WFJ-02

The service checks the well-formedness of strings.

0.00

⨯ Item Reviewed
⨯ All Children Linked

WFJ-03

The service checks the well-formedness of numbers.

0.00

⨯ Item Reviewed
⨯ All Children Linked

WFJ-04

The service checks the well-formedness of array.

0.00

⨯ Item Reviewed
✔ All Children Linked

WFJ-05

The service checks the well-formedness of objects.

0.00

⨯ Item Reviewed
⨯ All Children Linked

WFJ-06

The service checks that a JSON value must be an object, array, number, or string, or one of the lowercase literal names false, null, or true

0.00

⨯ Item Reviewed
✔ All Children Linked

WFJ-07

The service checks that JSON is only serialized using UTF-8.

0.00

⨯ Item Reviewed
⨯ All Children Linked

WFJ-08

The service ignores byte order marks.

0.00

⨯ Item Reviewed
✔ All Children Linked


Generated for: Software

  • Repository root: /home/runner/work/nlohmann_json/nlohmann_json

  • Commit SHA: 0ba0eb6c7b9326c1ad5558a5ef67a25fa6b61fc6

  • Commit date/time: 2026-02-20 12:44:32 UTC

  • Commit tag: 0ba0eb6