We took the SPDXJSONExample-v2.3.spdx.json, converted and serialized it to jsonld using the Python tooling.
Code for conversion is available on the serialization branch.
We had to slightly adapt the file to be able to convert it, below is a list of changes made and properties that couldn't be converted.
- Delete relationship "SPDXRef-CommonsLangSrc GENERATED_FROM NOASSERTION"
- Delete relationship "SPDXRef-Specification SPECIFICATION_FOR SPDXRef-fromDoap-0 (this is just an issue with the conversion, will be fixed as soon as SoftwareDependencyRelationship PRs are merged)
- CreationInformation
- creation_info.document_namespace not converted: missing conversion rule spdx/spdx-3-model#87
- creation_info.license_list_version not converted: missing conversion rule part of licensing profile, spdx/spdx-3-model#131
- Package
- package2.file_name not converted: missing conversion rule spdx/spdx-3-model#83
- package2.supplier not converted: missing conversion rule spdx/spdx-3-model#113
- package2.files_analyzed not converted: missing conversion rule spdx/spdx-3-model#84
- package2.verification_code not converted: missing implementation of IntegrityMethod, spdx/spdx-3-model#85
- package2.license_info_from_files, package2.license_comment not converted: missing conversion rule and missing definition of license profile
- http://spdx.org/spdxdocs/spdx-example-444504E0-4F89-41D3-9A0C-0305E82C3301#LocationRef-acmeforge not converted: missing conversion rule Conversion of ExternalPackageRef of type http://spdx.org/spdxdocs/spdx-example-444504E0-4F89-41D3-9A0C-0305E82C3301#LocationRef-acmeforge is currently not supported.spdx/spdx-3-model#81
- File
- file.file_type not converted: missing conversion rule different cardinalities, spdx/spdx-3-model#82
- file.license_info_in_file, file.license_comment not converted: missing conversion rule missing definition for license profile
- file.notice, file.contributors not converted: missing conversion rule missing definition for license profile
- Snippet
- snippet.file_spdx_id not converted: missing conversion rule spdx/spdx-3-model#130
- snippet.license_info_in_snippet, snippet.license_comment not converted: missing conversion rule missing definitions for license profile
- The listes spdx_ids are generated manually while converting the file, e.g. "http://spdx.org/spdxdocs/spdx-example-444504E0-4F89-41D3-9A0C-0305E82C3301#SPDXRef-Actor-ExampleCodeInspect". In the future, these will probably be machine-generated and contain random UUIDs.
- CreationInfo is not extracted and referenced although it is the same for every element.