# 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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](AOU.md#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](JLEX.md#jlex-01) | The requirement regarding [JSON Validation](https://eclipse-score.github.io/score/main/modules/baselibs/json/docs/requirements/index.html#comp_req__json__validation) is fulfilled. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [JLEX-02](JLEX.md#jlex-02) | The requirement regarding [JSON Deserialization](https://eclipse-score.github.io/score/main/modules/baselibs/json/docs/requirements/index.html#comp_req__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](JLS.md#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](JLS.md#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](JLS.md#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](JLS.md#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](JLS.md#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](JLS.md#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](JLS.md#jls-07) | Main branch is protected, i.e. no direct commits are possible. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [JLS-08](JLS.md#jls-08) | Each statement is scored based on SME reviews or automatic validation functions. (TODO) | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [JLS-09](JLS.md#jls-09) | Scores are reasonably, systematically and repeatably accumulated. (TODO) | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [JLS-10](JLS.md#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](JLS.md#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](JLS.md#jls-12) | The S-Core change process management is followed. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [JLS-13](JLS.md#jls-13) | The S-Core methodologies are followed. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [JLS-14](JLS.md#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](JLS.md#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](JLS.md#jls-17) | A github workflow calculates the fraction of expectations covered by tests (TODO). | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [JLS-18](JLS.md#jls-18) | Results from tests are accurately captured. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [JLS-19](JLS.md#jls-19) | All components, dependencies and tools are listed in a manifest. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [JLS-20](JLS.md#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](JLS.md#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](JLS.md#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](JLS.md#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](JLS.md#jls-24) | The nlohmann/json library recognizes malformed JSON and returns an exception. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [JLS-25](JLS.md#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](JLS.md#jls-26) | Pipeline execution results are analyzed in nlohmann/json. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [JLS-27](JLS.md#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](NJF.md#njf-01) | The service accepts the literal name null. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-02](NJF.md#njf-02) | The service accepts the literal name true. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-03](NJF.md#njf-03) | The service accepts the literal name false. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-04](NJF.md#njf-04) | The service does not accept any other literal name. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-05](NJF.md#njf-05) | The service accepts and rejects arrays according to RFC8259 §5. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NJF-05.1](NJF.md#njf-05.1) | The service accepts the empty array. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-05.2](NJF.md#njf-05.2) | The service accepts the non-empty arrays. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-05.3](NJF.md#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](NJF.md#njf-05.4) | The service does not accept any improperly bounded arrays. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-05.5](NJF.md#njf-05.5) | The service does not accept arrays with improper values. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-05.6](NJF.md#njf-05.6) | The service accepts nested arrays. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-05.6.0](NJF.md#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](NJF.md#njf-05.7) | The service does only accept comma as value separator. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NJF-05.7.1](NJF.md#njf-05.7.1) | The service does accept comma as value separator. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-05.7.2](NJF.md#njf-05.7.2) | The service does not accept any other value separator. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-06](NJF.md#njf-06) | The service accepts and rejects objects according to RFC8259 §4. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NJF-06.1](NJF.md#njf-06.1) | The service accepts the empty object. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-06.2](NJF.md#njf-06.2) | The service does not accept improperly bounded objects. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-06.3](NJF.md#njf-06.3) | The service accepts the non-empty objects. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-06.4](NJF.md#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](NJF.md#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](NJF.md#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](NJF.md#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](NJF.md#njf-06.5) | The service does not accept objects with improper members. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NJF-06.5.1](NJF.md#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](NJF.md#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](NJF.md#njf-06.6) | The service accept the nested objects. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-06.6.0](NJF.md#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](NJF.md#njf-06.7) | The service does only accept comma as member separator. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NJF-06.7.1](NJF.md#njf-06.7.1) | The service accepts comma as member separator. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-06.7.2](NJF.md#njf-06.7.2) | The service does not accept any other member separator. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-07](NJF.md#njf-07) | The service accepts and rejects strings according to RFC8259 §7. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NJF-07.1](NJF.md#njf-07.1) | The service does accept empty string. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-07.2](NJF.md#njf-07.2) | The service does not accept the improperly bounded strings. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-07.3](NJF.md#njf-07.3) | The service does not accept unescaped control characters. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-07.4](NJF.md#njf-07.4) | The service does accept the escaped control characters. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-07.5](NJF.md#njf-07.5) | The service accepts UTF-16 surrogate pairs. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-07.6](NJF.md#njf-07.6) | The service does accept the non-empty strings. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-07.7](NJF.md#njf-07.7) | The service does not accept escaped invalid characters. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-07.8](NJF.md#njf-07.8) | The service does not accept single unpaired utf-16 surrogates. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-07.9](NJF.md#njf-07.9) | The service does not accept unescaped UTF-16 surrogate pairs. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-08](NJF.md#njf-08) | The service accepts numbers according to RFC8259 §6. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NJF-08.1](NJF.md#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](NJF.md#njf-08.2) | The service does accept integers according to IEEE 754 binary64. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-08.3](NJF.md#njf-08.3) | The service does not accept NaN, infinity. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-08.4](NJF.md#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](NJF.md#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](NJF.md#njf-08.6) | The service does not accept invalid syntax for numbers. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-08.7](NJF.md#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](NJF.md#njf-08.8) | The service does not accept leading zeroes. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-08.9](NJF.md#njf-08.9) | The service does not accept any other digit symbol than 0-9. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-12](NJF.md#njf-12) | The service decodes UTF-8 data. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NJF-12.1](NJF.md#njf-12.1) | The service rejects malformed UTF-8 data. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-12.2](NJF.md#njf-12.2) | The service rejects "overlong sequences". | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-12.3](NJF.md#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](NJF.md#njf-12.5) | The service accepts Non-Characters. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-12.6](NJF.md#njf-12.6) | The service accepts well-formed UTF-8 data. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-13](NJF.md#njf-13) | The service accepts JSON data consisting of combinations of the data types. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-14](NJF.md#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](NJF.md#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](NJF.md#njf-14.2) | The service does not accept multiple UTF-8 byte order marks. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NJF-14.3](NJF.md#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](NJF.md#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](NJF.md#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](NPF.md#npf-01) | The service ignores the presence of a byte order mark. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NPF-01.1](NPF.md#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](NPF.md#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](NPF.md#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](NPF.md#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](NPF.md#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](NPF.md#npf-02) | The service parses numbers according to RFC8259. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NPF-02.1](NPF.md#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](NPF.md#npf-02.10) | The service ignores trailing zeroes after the decimal point. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-02.11](NPF.md#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](NPF.md#npf-02.12) | The service ignores capitalisation of the exponent. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-02.2](NPF.md#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](NPF.md#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](NPF.md#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](NPF.md#npf-02.5) | The service ignores leading zeroes in the exponent. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-02.6](NPF.md#npf-02.6) | The service parses integers within IEEE 754-2008 binary64. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-02.7](NPF.md#npf-02.7) | The service ignores leading and trailing whitespace. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-02.8](NPF.md#npf-02.8) | The service ignores one singular leading plus of the exponent. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-02.9](NPF.md#npf-02.9) | The service parses floating point numbers within IEEE 754-2008 binary64 standard. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-03](NPF.md#npf-03) | The service parses strings according to RFC8259. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NPF-03.1](NPF.md#npf-03.1) | The service ignores leading and trailing whitespace. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-03.2](NPF.md#npf-03.2) | The service parses escaped characters in the basic multilingual plane. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-03.3](NPF.md#npf-03.3) | The service ignores capitalisation in escaped hexadecimal unicode. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-03.4](NPF.md#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](NPF.md#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](NPF.md#npf-03.6) | The service parses the empty string. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-03.7](NPF.md#npf-03.7) | The service parses non-empty strings. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-04](NPF.md#npf-04) | The service parses literal names "true", "false" and "null" according to RFC8259. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NPF-04.1](NPF.md#npf-04.1) | The service ignores leading and trailing whitespace. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-04.2](NPF.md#npf-04.2) | The service parses the literal name true. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-04.3](NPF.md#npf-04.3) | The service parses the literal name false. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-04.4](NPF.md#npf-04.4) | The service parses the literal name null. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-05](NPF.md#npf-05) | The service parses arrays according to RFC8259. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NPF-05.1](NPF.md#npf-05.1) | The service ignores leading and trailing whitespace for each value. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-05.2](NPF.md#npf-05.2) | The service parses empty arrays. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-05.3](NPF.md#npf-05.3) | The service parses non-empty arrays. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-06](NPF.md#npf-06) | The service parses objects according to RFC8259. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NPF-06.1](NPF.md#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](NPF.md#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](NPF.md#npf-06.3) | The service parses empty objects. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-06.4](NPF.md#npf-06.4) | The service parses non-empty objects. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-07](NPF.md#npf-07) | The service parses well-formed UTF-8 encoded data only. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [NPF-07.1](NPF.md#npf-07.1) | The service parses UTF-8 encoded data. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [NPF-07.2](NPF.md#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](PJD.md#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](PJD.md#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](PJD.md#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](TA.md#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](TA.md#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](TA.md#ta-confidence) | Confidence in nlohmann/json library is measured based on results of analysis. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [TA-CONSTRAINTS](TA.md#ta-constraints) | Constraints on adaptation and deployment of nlohmann/json library are specified. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [TA-DATA](TA.md#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](TA.md#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](TA.md#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](TA.md#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](TA.md#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](TA.md#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](TA.md#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](TA.md#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](TA.md#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](TA.md#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](TA.md#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](TA.md#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](TIJ.md#tij-01) | The parsing service throws an exception on ill-formed literal names. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [TIJ-01.1](TIJ.md#tij-01.1) | The service throws an exception on capitalised literal names. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-01.2](TIJ.md#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](TIJ.md#tij-02) | The parsing service throws an exception on ill-formed numbers. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [TIJ-02.1](TIJ.md#tij-02.1) | The service throws an exception on leading plus. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-02.2](TIJ.md#tij-02.2) | The service throws an exception on leading zeroes. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-02.3](TIJ.md#tij-02.3) | The service throws an exception on NaN, infinity. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-02.4](TIJ.md#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](TIJ.md#tij-02.5) | The service throws an exception on invalid number syntax. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-03](TIJ.md#tij-03) | The parsing service throws an exception on ill-formed strings. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [TIJ-03.1](TIJ.md#tij-03.1) | The service throws an exception on unescaped control characters. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-03.2](TIJ.md#tij-03.2) | The service throws an exception on unpaired utf-16 surrogates. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-03.3](TIJ.md#tij-03.3) | The service throws an exception on improperly bounded strings. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-03.4](TIJ.md#tij-03.4) | The service throws an exception on escaped invalid characters. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-03.5](TIJ.md#tij-03.5) | The service throws an exception on incorrect surrogate pairs. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-04](TIJ.md#tij-04) | The parsing service throws an exception on ill-formed arrays. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [TIJ-04.1](TIJ.md#tij-04.1) | The service throws an exception on improperly bounded arrays. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-04.2](TIJ.md#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](TIJ.md#tij-04.3) | The service throws an exception on improper value separators. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-05](TIJ.md#tij-05) | The parsing service throws an exception on ill-formed objects. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [TIJ-05.1](TIJ.md#tij-05.1) | The service throws an exception on improperly bounded objects. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-05.2](TIJ.md#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](TIJ.md#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](TIJ.md#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](TIJ.md#tij-05.5) | The service throws an exception on improper member separators. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [TIJ-06](TIJ.md#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](TRUSTABLE.md#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](TT.md#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](TT.md#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](TT.md#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](TT.md#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](TT.md#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](TT.md#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](WFJ.md#wfj-01) | The service checks the well-formedness of the literal names. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [WFJ-02](WFJ.md#wfj-02) | The service checks the well-formedness of strings. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [WFJ-03](WFJ.md#wfj-03) | The service checks the well-formedness of numbers. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [WFJ-04](WFJ.md#wfj-04) | The service checks the well-formedness of array. | 0.00 | ⨯ Item Reviewed
✔ All Children Linked | | [WFJ-05](WFJ.md#wfj-05) | The service checks the well-formedness of objects. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [WFJ-06](WFJ.md#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](WFJ.md#wfj-07) | The service checks that JSON is only serialized using UTF-8. | 0.00 | ⨯ Item Reviewed
⨯ All Children Linked | | [WFJ-08](WFJ.md#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_