diff --git a/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx b/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx
new file mode 100644
index 0000000..abe133b
--- /dev/null
+++ b/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx
@@ -0,0 +1,861 @@
+SPDXVersion: SPDX-2.3
+DataLicense: CC0-1.0
+SPDXID: SPDXRef-DOCUMENT
+DocumentName: openchain-telco-sbom-validator-0.3.5
+DocumentNamespace: https://pypi.org/spdx/openchain-telco-sbom-validator-0.3.5
+
+## Creation Information
+
+LicenseListVersion: 3.28
+Creator: Organization: Nokia
+Creator: Tool: pypispdx - 0.3.1
+Created: 2026-06-24T15:14:53Z
+CreatorComment: CISA SBOM type: Analyzed
+This SBOM was created with Python version 3.14.6
+
+##### Package: openchain-telco-sbom-validator
+
+PackageName: openchain-telco-sbom-validator
+SPDXID: SPDXRef-openchain-telco-sbom-validator
+PackageVersion: 0.3.5
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/0d/db/8a3663d33288a5efdeb6cc57cfb9d5be39cb659d41dd753636afa44679a2/openchain_telco_sbom_validator-0.3.5.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: a722d07a6f0aa2bb3aaba788f4494973d2b529a0b2e4662723261ae302c64161
+PackageChecksum: MD5: 3604ac3d65b6cda762a4f35eb8cd0c3c
+PackageLicenseConcluded: Apache-2.0
+PackageLicenseDeclared: Apache-2.0
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/openchain-telco-sbom-validator@0.3.5
+
+##### Package: attrs
+
+PackageName: attrs
+SPDXID: SPDXRef-attrs
+PackageVersion: 26.1.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/9a/8e/82a0fe20a541c03148528be8cac2408564a6c9a0cc7e9171802bc1d26985/attrs-26.1.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: d03ceb89cb322a8fd706d4fb91940737b6642aa36998fe130a9bc96c985eff32
+PackageChecksum: MD5: 633953d1aa39cfa76c733a20fdd9c196
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: (c) N Revealed
+Copyright (c) 2015 Hynek Schlawack
+Copyright ..." is shown in the HTML footer. Default is True.
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/attrs@26.1.0
+
+##### Package: beartype
+
+PackageName: beartype
+SPDXID: SPDXRef-beartype
+PackageVersion: 0.22.9
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/c7/94/1009e248bbfbab11397abca7193bea6626806be9a327d399810d523a07cb/beartype-0.22.9.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 8f82b54aa723a2848a56008d18875f91c1db02c32ef6a62319a002e3e25a975f
+PackageChecksum: MD5: da867f7418a7e35ae5b8495b505000f0
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: copyright 2021, @leycec
+Copyright (c) 2014-2025 Beartype
+COPYRIGHT 2014-2025 Beartype authors
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/beartype@0.22.9
+
+##### Package: beautifulsoup4
+
+PackageName: beautifulsoup4
+SPDXID: SPDXRef-beautifulsoup4
+PackageVersion: 4.15.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/43/65/318323f98dbee45d42dff61d8f047181bc6f2268a9068cfad035a46be5af/beautifulsoup4-4.15.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 288e3ca7d54b06f2ac191970bc275c1939cb46d450b255bf6718b04aa37ab4f7
+PackageChecksum: MD5: a9d04db2259b78ec23fcdfddfed5bcb8
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/beautifulsoup4@4.15.0
+
+##### Package: boolean-py
+
+PackageName: boolean-py
+SPDXID: SPDXRef-boolean-py
+PackageVersion: 5.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/c4/cf/85379f13b76f3a69bca86b60237978af17d6aa0bc5998978c3b8cf05abb2/boolean_py-5.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 60cbc4bad079753721d32649545505362c754e121570ada4658b852a3a318d95
+PackageChecksum: MD5: 1a7ec75805094c91980b9f11240853c0
+PackageLicenseConcluded: BSD-2-Clause
+PackageLicenseDeclared: BSD-2-Clause
+PackageCopyrightText: copyright 2009, Sebastian Kramer
+Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors
+Copyright (c) Sebastian Kraemer, basti.kr@gmail.com and others
+Copyright (c) 2009-2020 Sebastian Kraemer, basti.kr@gmail.com and others
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/boolean-py@5.0
+
+##### Package: certifi
+
+PackageName: certifi
+SPDXID: SPDXRef-certifi
+PackageVersion: 2026.6.17
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/c9/c7/424b75da314c1045981bd9777432fad05a9e0c69daa4ed7e308bbaffe405/certifi-2026.6.17.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 024c88eeec92ca068db80f02b8b07c9cef7b9fe261d1d535abfd5abd6f6af432
+PackageChecksum: MD5: 1af47cd1635599db1f2e598ae6c4d751
+PackageLicenseConcluded: MPL-2.0
+PackageLicenseDeclared: MPL-2.0
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/certifi@2026.6.17
+
+##### Package: chardet
+
+PackageName: chardet
+SPDXID: SPDXRef-chardet
+PackageVersion: 7.4.3
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/19/b6/9df434a8eeba2e6628c465a1dfa31034228ef79b26f76f46278f4ef7e49d/chardet-7.4.3.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: cc1d4eb92a4ec1c2df3b490836ffa46922e599d34ce0bb75cf41fd2bf6303d56
+PackageChecksum: MD5: df96bc7067630990c971ea95001f5687
+PackageLicenseConcluded: 0BSD
+PackageLicenseDeclared: 0BSD
+PackageCopyrightText: Copyright (c) 2026 Dan Blanchard
+copyright 2026, chardet contributors
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/chardet@7.4.3
+
+##### Package: charset-normalizer
+
+PackageName: charset-normalizer
+SPDXID: SPDXRef-charset-normalizer
+PackageVersion: 3.4.7
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/e7/a1/67fe25fac3c7642725500a3f6cfe5821ad557c3abb11c9d20d12c7008d3e/charset_normalizer-3.4.7.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: ae89db9e5f98a11a4bf50407d4363e7b09b31e55bc117b4f7d80aab97ba009e5
+PackageChecksum: MD5: 68805886064d248d2e5205fd11112d85
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: COPYRIGHT (c) FOOBAR
+copyright 2023, Ahmed TAHRI
+Copyright (c) 2025 Ahmed TAHRI
+Copyright (c) 2025 TAHRI Ahmed R.
+copyright (c) 2021 by Ahmed TAHRI
+(c) 2012 Denny Vrandecic (http://simia.net/letters/)
+Copyright (c) Ahmed TAHRI @Ousret (https://github.com/Ousret)
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/charset-normalizer@3.4.7
+
+##### Package: click
+
+PackageName: click
+SPDXID: SPDXRef-click
+PackageVersion: 8.4.1
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/9b/98/518d8e5081007684232226f475082b30087d0f585e8457db087298259f49/click-8.4.1.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 918b5633eddf6b41c32d4f454bf0de810065c74e3f7dbf8ee5452f8be88d3e96
+PackageChecksum: MD5: 28bc070cf89b06d88bf74b2d3c4debc7
+PackageLicenseConcluded: BSD-3-Clause
+PackageLicenseDeclared: BSD-3-Clause
+PackageCopyrightText: Copyright 2014 Pallets
+copyright 2014 Pallets
+Copyright 2001-2006 Gregory P. Ward
+Copyright 2002-2006 Python Software Foundation
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/click@8.4.1
+
+##### Package: commoncode
+
+PackageName: commoncode
+SPDXID: SPDXRef-commoncode
+PackageVersion: 32.5.2
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/8e/69/50e2f0cac532d373c15b5d41bc9d948cf273b6a6dcf24649e6fbccb82e59/commoncode-32.5.2.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 2964ca058cf93f2917048ee3ff03907cf65f8f2034de09992b52063801a91790
+PackageChecksum: MD5: 9678f3e0fe2193b4e6bf0b3862c1f7e3
+PackageLicenseConcluded: NOASSERTION
+PackageLicenseDeclared: NOASSERTION
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/commoncode@32.5.2
+
+##### Package: fetchcode
+
+PackageName: fetchcode
+SPDXID: SPDXRef-fetchcode
+PackageVersion: 0.8.2
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/6e/e2/e8855b0665685cd43ad2da8912ba4c1f8fd77739ce2da451dbb5b89411cd/fetchcode-0.8.2.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 53ff257905235fb264fe7c151c1eb37c35112dd41464ab1f346e9a5caf0f01c8
+PackageChecksum: MD5: 1b23a010b0706e43ffe0d676eceb176c
+PackageLicenseConcluded: Apache-2.0
+PackageLicenseDeclared: Apache-2.0
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/fetchcode@0.8.2
+
+##### Package: fusepy
+
+PackageName: fusepy
+SPDXID: SPDXRef-fusepy
+PackageVersion: 3.0.1
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/04/0b/4506cb2e831cea4b0214d3625430e921faaa05a7fb520458c75a2dbd2152/fusepy-3.0.1.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 72ff783ec2f43de3ab394e3f7457605bf04c8cf288a2f4068b4cde141d4ee6bd
+PackageChecksum: MD5: d383a3c6742755039ba51b6f3f919d5f
+PackageLicenseConcluded: ISC
+PackageLicenseDeclared: ISC
+PackageCopyrightText: Copyright (c) 2012 Terence Honles
+Copyright (c) 2008 Giorgos Verigakis
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/fusepy@3.0.1
+
+##### Package: html5lib
+
+PackageName: html5lib
+SPDXID: SPDXRef-html5lib
+PackageVersion: 1.1
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/ac/b6/b55c3f49042f1df3dcd422b7f224f939892ee94f22abcf503a9b7339eaf2/html5lib-1.1.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: b2e5b40261e20f354d198eae92afc10d750afb487ed5e50f9c4eaf07c184146f
+PackageChecksum: MD5: 6748742e2ec4cb99287a6bc82bcfe2b0
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: (c) OY H-aaoY
+Copyright (c) 2006-2013 James Graham and other contributors
+Copyright (c) 2006-2013 James Graham, Geoffrey Sneddon, and other contributors
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/html5lib@1.1
+
+##### Package: htmllistparse
+
+PackageName: htmllistparse
+SPDXID: SPDXRef-htmllistparse
+PackageVersion: 0.6.1
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/47/4f/6c57a2817e4f20c1ed8dcca24ee036f981ed036f4b36d07a0100303db96a/htmllistparse-0.6.1.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 6dc8a6bf03c843b9d325843a26a2351a795b573cd92a2c9b8271621019c64082
+PackageChecksum: MD5: 3e8ffe2e64318ad9c3875bf0678bc724
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: Copyright (c) 2016-2017 Dingyuan Wang
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/htmllistparse@0.6.1
+
+##### Package: idna
+
+PackageName: idna
+SPDXID: SPDXRef-idna
+PackageVersion: 3.18
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/cd/63/9496c57188a2ee585e0f1db071d75089a11e98aa86eb99d9d7618fc1edce/idna-3.18.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: ffb385a7e039654cef1ab9ef32c6fafe283c0c0467bba1d9029738ce4a14a848
+PackageChecksum: MD5: 64359467ec86d86e398b1ae614e5718c
+PackageLicenseConcluded: BSD-3-Clause
+PackageLicenseDeclared: BSD-3-Clause
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/idna@3.18
+
+##### Package: license-expression
+
+PackageName: license-expression
+SPDXID: SPDXRef-license-expression
+PackageVersion: 30.4.4
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/40/71/d89bb0e71b1415453980fd32315f2a037aad9f7f70f695c7cec7035feb13/license_expression-30.4.4.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 73448f0aacd8d0808895bdc4b2c8e01a8d67646e4188f887375398c761f340fd
+PackageChecksum: MD5: 933c9e708aba564bec664357771709d7
+PackageLicenseConcluded: Apache-2.0
+PackageLicenseDeclared: Apache-2.0
+PackageCopyrightText: Copyright (c) nexB Inc.
+Copyright (c) Giovanni Bussi
+Copyright (c) 2019 Giovanni Bussi
+Copyright (c) nexB Inc. and others.
+copyright nexB Inc., AboutCode and others
+Copyright (c) 2008-2020 The pip developers
+Copyright (c) nexB Inc. AboutCode, and others
+copyright 2010 David Wolever
+Copyright (c) 2010 David Wolever
+Copyright (c) 2010 David Wolever . All rights reserved.
+Copyright (c) nexB Inc. and others. All rights reserved.
+Copyright (c) nexB Inc. AboutCode, and others. All rights reserved.
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/license-expression@30.4.4
+
+##### Package: ntia-conformance-checker
+
+PackageName: ntia-conformance-checker
+SPDXID: SPDXRef-ntia-conformance-checker
+PackageVersion: 5.0.3
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/91/35/3f10225852dffe0b9cf368cc63d13c5600ca4102e23d02eca9aa961e53ea/ntia_conformance_checker-5.0.3.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: af4262a06560fcdaf05025522907977977c904538d4697fc44bc72bc29a853f2
+PackageChecksum: MD5: 4c445d1df5e2b00d70d62e20f3d6151e
+PackageLicenseConcluded: Apache-2.0
+PackageLicenseDeclared: Apache-2.0
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/ntia-conformance-checker@5.0.3
+
+##### Package: packageurl-python
+
+PackageName: packageurl-python
+SPDXID: SPDXRef-packageurl-python
+PackageVersion: 0.17.6
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/f5/d6/3b5a4e3cfaef7a53869a26ceb034d1ff5e5c27c814ce77260a96d50ab7bb/packageurl_python-0.17.6.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 1252ce3a102372ca6f86eb968e16f9014c4ba511c5c37d95a7f023e2ca6e5c25
+PackageChecksum: MD5: 17b4e2291bacd545758f1c466f3db7b3
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: Copyright (c) the purl authors
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/packageurl-python@0.17.6
+
+##### Package: ply
+
+PackageName: ply
+SPDXID: SPDXRef-ply
+PackageVersion: 3.11
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/e5/69/882ee5c9d017149285cab114ebeab373308ef0f874fcdac9beb90e0ac4da/ply-3.11.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3
+PackageChecksum: MD5: 6465f602e656455affcd7c5734c638f8
+PackageLicenseConcluded: BSD-3-Clause
+PackageLicenseDeclared: BSD-3-Clause
+PackageCopyrightText: Copyright (c) 2001-2018 David M. Beazley (Dabeaz LLC)
+David Beazley (http://www.dabeaz.com) Copyright (c) 2007
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/ply@3.11
+
+##### Package: prettytable
+
+PackageName: prettytable
+SPDXID: SPDXRef-prettytable
+PackageVersion: 3.18.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/81/74/ba08d81e668ccfe8658d7520a307e63c19862c08eb4ccb26f356c5239a7a/prettytable-3.18.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 439217116152244369caf3d9f1caf2f9fe29b03bd79e88d2928c8e718c95d680
+PackageChecksum: MD5: 74b207a4799266653b11a5530f1d5a77
+PackageLicenseConcluded: BSD-3-Clause
+PackageLicenseDeclared: BSD-3-Clause
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/prettytable@3.18.0
+
+##### Package: pyparsing
+
+PackageName: pyparsing
+SPDXID: SPDXRef-pyparsing
+PackageVersion: 3.3.2
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/f3/91/9c6ee907786a473bf81c5f53cf703ba0957b23ab84c264080fb5a450416f/pyparsing-3.3.2.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: c777f4d763f140633dcb6d8a3eda953bf7a214dc4eff598413c070bcdc117cbc
+PackageChecksum: MD5: ca3bea68cd1a84584b68cd7bed679464
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: Copyright 2004, Paul McGuire
+Copyright 2006, Paul McGuire
+Copyright 2008 Chris Lambrou
+Copyright 2008, Paul McGuire
+Copyright 2010, Paul McGuire
+Copyright 2011, Paul McGuire
+Copyright 2015, Paul McGuire
+Copyright 2016, Paul McGuire
+Copyright 2018, Paul McGuire
+Copyright 2019, Paul McGuire
+Copyright 2020, Paul McGuire
+Copyright 2021, Paul McGuire
+Copyright 2023, Paul McGuire
+Copyright 2024, Paul McGuire
+Copyright Paul McGuire, 2019
+Copyright Paul McGuire, 2021
+copyright 2006, Paul McGuire
+Copyright, 2010, Paul McGuire
+Copyright, 2007 - Paul McGuire
+Copyright, 2012 - Paul McGuire
+Copyright 2006, by Paul McGuire
+Copyright 2008, by Paul McGuire
+Copyright 2012, Paul T. McGuire
+Copyright 2022, by Paul McGuire
+Copyright 2024, by Paul McGuire
+Copyright (c) 2003, Paul McGuire
+Copyright (c) 2004, Paul McGuire
+Copyright (c) 2006, Paul McGuire
+Copyright (c) 2016, Paul McGuire
+Copyright (c) 2024, Paul McGuire
+Copyright 2010,2019 Paul McGuire
+Copyright, 2006, by Paul McGuire
+Copyright 2002-2021, Paul McGuire
+Copyright 2005-2006, Paul McGuire
+Copyright 2009, 2011 Paul McGuire
+Copyright (c) 2018 Paul T. McGuire
+Copyright Ellis & Grant, Inc. 2005
+Copyright 2003-2019 by Paul McGuire
+Copyright 2011,2015 Paul T. McGuire
+Copyright (c) 2003,2019 Paul McGuire
+Copyright (c) 2003-2024 Paul McGuire
+Copyright (c) 2003-2025 Paul McGuire
+Copyright (c) 2006,2016 Paul McGuire
+Copyright 2003, 2019 by Paul McGuire
+Copyright 2004-2016, by Paul McGuire
+Copyright 2007, 2023 by Paul McGuire
+Copyright 2007-2011, by Paul McGuire
+Copyright 2010, 2019 by Paul McGuire
+Copyright 2012, 2019 Paul T. McGuire
+copyright 2018-2024, Paul T. McGuire
+Copyright (c) 2003,2016, Paul McGuire
+Copyright (c) 2004, 2006 Paul McGuire
+Copyright (c) 2004-2016, Paul McGuire
+Copyright (c) 2006, 2019, Paul McGuire
+Copyright (c) 2003-2022 Paul T. McGuire
+Copyright (c) 2004-2011 Paul T. McGuire
+Copyright (c) 2006, 2016, 2023, Paul McGuire
+Copyright (c) 2006, Estrate, the Netherlands
+Copyright 1989 by Carnegie Mellon University
+Copyright 2004-2010, by Paul McGuire September, 2010
+Copyright Petri Savolainen
+Copyright 2004, by Alberto Santini http://www.albertosantini.it/chess
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/pyparsing@3.3.2
+
+##### Package: python-dateutil
+
+PackageName: python-dateutil
+SPDXID: SPDXRef-python-dateutil
+PackageVersion: 2.9.0.post0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3
+PackageChecksum: MD5: 81cb6aad924ef40ebfd3d62eaebe47c6
+PackageLicenseConcluded: Apache-2.0 AND LicenseRef-unknown-License-OSI-Approved-BSD-License
+PackageLicenseDeclared: Apache-2.0 AND LicenseRef-unknown-License-OSI-Approved-BSD-License
+PackageCopyrightText: copyright 2019, dateutil
+Copyright 2017- dateutil contributors
+Copyright (c) 2015- - dateutil contributors
+Copyright 2017- Paul Ganssle
+Copyright (c) 2015- - Paul Ganssle
+Copyright (c) 2014-2016 - Yaron de Leeuw
+Copyright (c) 2003-2011 - Gustavo Niemeyer
+Copyright (c) 2012-2014 - Tomi Pievilainen
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/python-dateutil@2.9.0.post0
+
+##### Package: python-dotenv
+
+PackageName: python-dotenv
+SPDXID: SPDXRef-python-dotenv
+PackageVersion: 1.2.2
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/82/ed/0301aeeac3e5353ef3d94b6ec08bbcabd04a72018415dcb29e588514bba8/python_dotenv-1.2.2.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 2c371a91fbd7ba082c2c1dc1f8bf89ca22564a087c2c287cd9b662adde799cf3
+PackageChecksum: MD5: 74d7de20ea73ed77c5a0c2a5d9c39764
+PackageLicenseConcluded: BSD-3-Clause
+PackageLicenseDeclared: BSD-3-Clause
+PackageCopyrightText: Copyright (c) 2014, Saurabh Kumar
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/python-dotenv@1.2.2
+
+##### Package: pyyaml
+
+PackageName: pyyaml
+SPDXID: SPDXRef-pyyaml
+PackageVersion: 6.0.3
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f
+PackageChecksum: MD5: dbc6f815cd75160ccf12e470be1c8d6e
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: Copyright (c) 2017-2021 Ingy
+Copyright (c) 2006-2016 Kirill Simonov
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/pyyaml@6.0.3
+
+##### Package: rdflib
+
+PackageName: rdflib
+SPDXID: SPDXRef-rdflib
+PackageVersion: 7.6.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/98/f5/18bb77b7af9526add0c727a3b2048959847dc5fb030913e2918bf384fec3/rdflib-7.6.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 6c831288d5e4a5a7ece85d0ccde9877d512a3d0f02d7c06455d00d6d0ea379df
+PackageChecksum: MD5: 11bd8e278d1c1e5628ace31a7db904a4
+PackageLicenseConcluded: BSD-3-Clause
+PackageLicenseDeclared: BSD-3-Clause
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/rdflib@7.6.0
+
+##### Package: requests
+
+PackageName: requests
+SPDXID: SPDXRef-requests
+PackageVersion: 2.34.2
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/ac/c3/e2a2b89f2d3e2179abd6d00ebd70bff6273f37fb3e0cc209f48b39d00cbf/requests-2.34.2.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: f288924cae4e29463698d6d60bc6a4da69c89185ad1e0bcc4104f584e960b9ed
+PackageChecksum: MD5: 611e438d0803e962500225f9807a475e
+PackageLicenseConcluded: Apache-2.0
+PackageLicenseDeclared: Apache-2.0
+PackageCopyrightText: Copyright Kenneth Reitz
+Copyright 2019 Kenneth Reitz
+copyright (c) 2012 by Kenneth Reitz
+copyright (c) 2017 by Kenneth Reitz
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/requests@2.34.2
+
+##### Package: saneyaml
+
+PackageName: saneyaml
+SPDXID: SPDXRef-saneyaml
+PackageVersion: 0.6.1
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/18/bb/b3ab128fe13964fc8da25ecbac82f9ed9beb59b2e04bfbef433886f1acb0/saneyaml-0.6.1.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 19cfbd8bf94d730998162c790fe5cec9abb5300cc5890fe37dc6dbcaa8fb16bb
+PackageChecksum: MD5: 0ab1ec694c2c004035d1d42c17ac47b0
+PackageLicenseConcluded: Apache-2.0
+PackageLicenseDeclared: Apache-2.0
+PackageCopyrightText: Copyright (c) Python
+Copyright (c) nexB Inc.
+copyright of Pete Harlow
+Copyright (c) 1990-2, RSA
+Copyright (c) 1991-2, RSA
+Copyright (c) 2004 Infrae
+Copyright (c) 2009 Gerhard
+Copyright (c) 2013-2017 nexB
+Copyright (c) 2013-2017, Kim
+Copyright (c) Giovanni Bussi
+copyright 1992 by Eric Haines
+copyright nexB Inc. and others
+Copyright (c) 2008-2020 The pip
+Copyright (c) 2009 Gerhard Weis
+Copyright (c) 2013-2017 nexB Inc.
+Copyright (c) 2019 Giovanni Bussi
+Copyright (c) Ian F. Darwin, 1987
+Copyright (c) Python contributors
+Copyright RSA Data Security, Inc.
+copyright RSA Data Security, Inc.
+Copyright (c) nexB Inc. and others.
+Copyright (c) 1996-1997 Cisco Systems
+copyright by the University of Cambridge
+(c) Copyright 1993,1994 by Carnegie Mellon
+Copyright (c) 2008-2020 The pip developers
+Copyright (c) Zeus Technology Limited 1996
+Copyright (c) 1993, 1994 by Carnegie Mellon
+Copyright (c) 1996-1997 Cisco Systems, Inc.
+Copyright (c) 2000-2002 The Apache Software
+Copyright (c) 1994, Jeff Hostetler, Spyglass
+copyright 1992 by Eric Haines, erich@eye.com
+Copyright (c) 1990-2, RSA Data Security, Inc.
+Copyright (c) 1991-2, RSA Data Security, Inc.
+Copyright (c) 2004 Infrae.', description' lxml
+Copyright (c) 1991 Bell Communications Research
+Copyright (c) 1997-2001 University of Cambridge
+copyright 2010 David Wolever
+copyright by the University of Cambridge, England
+Copyright (c) 1994, Jeff Hostetler, Spyglass, Inc.
+Copyright (c) 2010 David Wolever
+(c) Copyright 1993,1994 by Carnegie Mellon University
+Copyright (c) 1991 Bell Communications Research, Inc.
+Copyright (c) 1993, 1994 by Carnegie Mellon University
+Copyright (c) 2000-2002 The Apache Software Foundation
+Copyright (c) 2010 David Wolever . All rights reserved.
+Copyright (c) nexB Inc. and others. All rights reserved.
+Copyright 1991 by the Massachusetts Institute of Technology
+Copyright (c) 1995, Board of Trustees of the University of Illinois
+Copyright (c) 2009 Free Software Foundation, Inc.
+Copyright (c) Ian F. Darwin 1986, 1987, 1989, 1990, 1991, 1992, 1994, 1995
+Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark
+Copyright (c) 2013-2017, Kim Davies description Internationalized Domain Names
+Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper
+copyright Steinar H. Gunderson and Knut Auvor Grythe
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/saneyaml@0.6.1
+
+##### Package: semantic-version
+
+PackageName: semantic-version
+SPDXID: SPDXRef-semantic-version
+PackageVersion: 2.10.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/7d/31/f2289ce78b9b473d582568c234e104d2a342fd658cc288a7553d83bb8595/semantic_version-2.10.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: bdabb6d336998cbb378d4b9db3a4b56a1e3235701dc05ea2690d9a997ed5041c
+PackageChecksum: MD5: e48abef93ba69abcd4eaf4640edfc38b
+PackageLicenseConcluded: BSD-2-Clause
+PackageLicenseDeclared: BSD-2-Clause
+PackageCopyrightText: Copyright (c) The python-semanticversion project
+copyright u'2012-2019, The python-semanticversion project
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/semantic-version@2.10.0
+
+##### Package: six
+
+PackageName: six
+SPDXID: SPDXRef-six
+PackageVersion: 1.17.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81
+PackageChecksum: MD5: a0387fe15662c71057b4fb2b7aa9056a
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: Copyright (c) 2010-2024 Benjamin Peterson
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/six@1.17.0
+
+##### Package: soupsieve
+
+PackageName: soupsieve
+SPDXID: SPDXRef-soupsieve
+PackageVersion: 2.8.4
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/47/2c/0a5f6f8ee0d5589e48c7640213ed5175d52cf540a06725b628cc1a45d6ce/soupsieve-2.8.4.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: e121fd02e975c695e4e9e8774a5ee35d74714b59307868dcc5319ad2d9e3328e
+PackageChecksum: MD5: 6afa60ca1795634136ee3ce3a24fb7cc
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/soupsieve@2.8.4
+
+##### Package: spdx-python-model
+
+PackageName: spdx-python-model
+SPDXID: SPDXRef-spdx-python-model
+PackageVersion: 0.0.4
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/68/11/43a4a60f929d41a3e681763728bbba6acf5f3997e68c355551b740d1a9c9/spdx_python_model-0.0.4.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: bdec725398babcbdd4bcb7c16cf23497d06a48d0ef3ea1edb19a3b0d431ab8c1
+PackageChecksum: MD5: 07960215af05ac5e1e6422705ce0e32d
+PackageLicenseConcluded: Apache-2.0
+PackageLicenseDeclared: Apache-2.0
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/spdx-python-model@0.0.4
+
+##### Package: spdx-tools
+
+PackageName: spdx-tools
+SPDXID: SPDXRef-spdx-tools
+PackageVersion: 0.8.5
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/2f/99/33383f587b59cbd191cc1c0fd5408e550b9275e0090d32561cbddc973fdc/spdx_tools-0.8.5.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: be600beb2f762f0116025e05490d399e724f668bef84025a7c421bb266688bdb
+PackageChecksum: MD5: 1f57f1eb5bdbc42d3de855d3f2701dfe
+PackageLicenseConcluded: Apache-2.0
+PackageLicenseDeclared: Apache-2.0
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/spdx-tools@0.8.5
+
+##### Package: text-unidecode
+
+PackageName: text-unidecode
+SPDXID: SPDXRef-text-unidecode
+PackageVersion: 1.3
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/ab/e2/e9a00f0ccb71718418230718b3d900e71a5d16e701a3dae079a21e9cd8f8/text-unidecode-1.3.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: bad6603bb14d279193107714b288be206cac565dfa49aa5b105294dd5c4aab93
+PackageChecksum: MD5: 53a0a6c5aef8f5eb5834e78e0fdf0499
+PackageLicenseConcluded: GPL-2.0-or-later AND LicenseRef-unknown-License-OSI-Approved-Artistic-License AND LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL
+PackageLicenseDeclared: GPL-2.0-or-later AND LicenseRef-unknown-License-OSI-Approved-Artistic-License AND LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/text-unidecode@1.3
+
+##### Package: typing-extensions
+
+PackageName: typing-extensions
+SPDXID: SPDXRef-typing-extensions
+PackageVersion: 4.15.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466
+PackageChecksum: MD5: 079e529d0b271647f3ec2720aee8fc65
+PackageLicenseConcluded: PSF-2.0
+PackageLicenseDeclared: PSF-2.0
+PackageCopyrightText: Copyright (c) 1995-2001 Corporation for National Research Initiatives
+Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, The Netherlands
+Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python Software Foundation
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/typing-extensions@4.15.0
+
+##### Package: uritools
+
+PackageName: uritools
+SPDXID: SPDXRef-uritools
+PackageVersion: 6.1.2
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/d7/75/b1f0e26e0c080c2febdd3a98a752c9fbcf078778f60fe90ea489dc8226ed/uritools-6.1.2.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: fa60028843a8be651699a1ee2b399066eeaef349224b32a177efa4aeba463f00
+PackageChecksum: MD5: ac0c714d0f00d2bb5e8145e51b3650c8
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: NOASSERTION
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/uritools@6.1.2
+
+##### Package: urllib3
+
+PackageName: urllib3
+SPDXID: SPDXRef-urllib3
+PackageVersion: 2.7.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/53/0c/06f8b233b8fd13b9e5ee11424ef85419ba0d8ba0b3138bf360be2ff56953/urllib3-2.7.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c
+PackageChecksum: MD5: e79707b798a66c8165c9c441440f4e80
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: Copyright 2019-2022, Pyodide contributors
+2019-2022 Pyodide contributors and Mozilla
+Copyright (c) 2019-2022, Pyodide contributors
+Copyright (c) 2008-2020 Andrey Petrov and contributors
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/urllib3@2.7.0
+
+##### Package: validators
+
+PackageName: validators
+SPDXID: SPDXRef-validators
+PackageVersion: 0.35.0
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/53/66/a435d9ae49850b2f071f7ebd8119dd4e84872b01630d6736761e6e7fd847/validators-0.35.0.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 992d6c48a4e77c81f1b4daba10d16c3a9bb0dbb79b3a19ea847ff0928e70497a
+PackageChecksum: MD5: 8376f37ec2028053cee8f4789dadd947
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: COPYRIGHT 2013 - 2025, Konsta Vesterinen
+Copyright (c) 2013 - 2025 Konsta Vesterinen
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/validators@0.35.0
+
+##### Package: wcwidth
+
+PackageName: wcwidth
+SPDXID: SPDXRef-wcwidth
+PackageVersion: 0.8.1
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/49/b4/51fe890511f0f242d07cb1ebe6a5b6db417262b9d2568b460347c57d95cc/wcwidth-0.8.1.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: faf5b4a5366a72dc49cad48cdf21f52bdf63bdda995178e483ba247ff79089b9
+PackageChecksum: MD5: 7bd48380fd85a92d77b2dbb9d412ad99
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: (c) 2025 Unicode(r), Inc.
+(c) E0.6 copyright 00AE FE0F
+Copyright (c) 2014 Jeff Quast
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/wcwidth@0.8.1
+
+##### Package: webencodings
+
+PackageName: webencodings
+SPDXID: SPDXRef-webencodings
+PackageVersion: 0.5.1
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923
+PackageChecksum: MD5: 32f6e261d52e57bf7e1c4d41546d15b8
+PackageLicenseConcluded: LicenseRef-unknown-License-OSI-Approved-BSD-License
+PackageLicenseDeclared: LicenseRef-unknown-License-OSI-Approved-BSD-License
+PackageCopyrightText: Copyright 2012 by Simon Sapin
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/webencodings@0.5.1
+
+##### Package: xmltodict
+
+PackageName: xmltodict
+SPDXID: SPDXRef-xmltodict
+PackageVersion: 1.0.4
+PackageSupplier: Organization: https://pypi.org
+PackageDownloadLocation: https://files.pythonhosted.org/packages/19/70/80f3b7c10d2630aa66414bf23d210386700aa390547278c789afa994fd7e/xmltodict-1.0.4.tar.gz
+FilesAnalyzed: false
+PackageChecksum: SHA256: 6d94c9f834dd9e44514162799d344d815a3a4faec913717a9ecbfa5be1bb8e61
+PackageChecksum: MD5: f0a83032fc31c918a8cd9e60cdb46cb1
+PackageLicenseConcluded: MIT
+PackageLicenseDeclared: MIT
+PackageCopyrightText: Copyright (c) 2012 Martin Blech and individual contributors
+
+ExternalRef: PACKAGE-MANAGER purl pkg:pypi/xmltodict@1.0.4
+
+##### Relationships
+
+Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-openchain-telco-sbom-validator
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-attrs
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-beartype
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-beautifulsoup4
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-boolean-py
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-certifi
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-chardet
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-charset-normalizer
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-click
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-commoncode
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-fetchcode
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-fusepy
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-html5lib
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-htmllistparse
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-idna
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-license-expression
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-ntia-conformance-checker
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-packageurl-python
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-ply
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-prettytable
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-pyparsing
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-python-dateutil
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-python-dotenv
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-pyyaml
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-rdflib
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-requests
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-saneyaml
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-semantic-version
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-six
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-soupsieve
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-spdx-python-model
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-spdx-tools
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-text-unidecode
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-typing-extensions
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-uritools
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-urllib3
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-validators
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-wcwidth
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-webencodings
+Relationship: SPDXRef-openchain-telco-sbom-validator CONTAINS SPDXRef-xmltodict
+
+##### Custom licenses
+
+LicenseID: LicenseRef-unknown-License-OSI-Approved-BSD-License
+LicenseName: unknown-License-OSI-Approved-BSD-License
+ExtractedText: License :: OSI Approved :: BSD License
+LicenseID: LicenseRef-unknown-License-OSI-Approved-Artistic-License
+LicenseName: unknown-License-OSI-Approved-Artistic-License
+ExtractedText: License :: OSI Approved :: Artistic License
+LicenseID: LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL
+LicenseName: unknown-License-OSI-Approved-GNU-General-Public-License-GPL
+ExtractedText: License :: OSI Approved :: GNU General Public License (GPL)
diff --git a/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx.json b/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx.json
new file mode 100644
index 0000000..0d6c1b3
--- /dev/null
+++ b/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx.json
@@ -0,0 +1,1357 @@
+{
+ "SPDXID": "SPDXRef-DOCUMENT",
+ "creationInfo": {
+ "created": "2026-06-24T15:15:49Z",
+ "creators": [
+ "Organization: Nokia",
+ "Tool: pypispdx - 0.3.1"
+ ],
+ "licenseListVersion": "3.28",
+ "comment": "CISA SBOM type: Analyzed\nThis SBOM was created with Python version 3.14.6"
+ },
+ "dataLicense": "CC0-1.0",
+ "hasExtractedLicensingInfos": [
+ {
+ "extractedText": "License :: OSI Approved :: BSD License",
+ "licenseId": "LicenseRef-unknown-License-OSI-Approved-BSD-License",
+ "name": "unknown-License-OSI-Approved-BSD-License"
+ },
+ {
+ "extractedText": "License :: OSI Approved :: Artistic License",
+ "licenseId": "LicenseRef-unknown-License-OSI-Approved-Artistic-License",
+ "name": "unknown-License-OSI-Approved-Artistic-License"
+ },
+ {
+ "extractedText": "License :: OSI Approved :: GNU General Public License (GPL)",
+ "licenseId": "LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL",
+ "name": "unknown-License-OSI-Approved-GNU-General-Public-License-GPL"
+ }
+ ],
+ "name": "openchain-telco-sbom-validator-0.3.5",
+ "spdxVersion": "SPDX-2.3",
+ "documentNamespace": "https://pypi.org/spdx/openchain-telco-sbom-validator-0.3.5",
+ "packages": [
+ {
+ "SPDXID": "SPDXRef-openchain-telco-sbom-validator",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "a722d07a6f0aa2bb3aaba788f4494973d2b529a0b2e4662723261ae302c64161"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "3604ac3d65b6cda762a4f35eb8cd0c3c"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/0d/db/8a3663d33288a5efdeb6cc57cfb9d5be39cb659d41dd753636afa44679a2/openchain_telco_sbom_validator-0.3.5.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/openchain-telco-sbom-validator@0.3.5",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "Apache-2.0",
+ "licenseDeclared": "Apache-2.0",
+ "name": "openchain-telco-sbom-validator",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.3.5"
+ },
+ {
+ "SPDXID": "SPDXRef-attrs",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "d03ceb89cb322a8fd706d4fb91940737b6642aa36998fe130a9bc96c985eff32"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "633953d1aa39cfa76c733a20fdd9c196"
+ }
+ ],
+ "copyrightText": "(c) N Revealed\nCopyright (c) 2015 Hynek Schlawack\nCopyright ...\" is shown in the HTML footer. Default is True.\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/9a/8e/82a0fe20a541c03148528be8cac2408564a6c9a0cc7e9171802bc1d26985/attrs-26.1.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/attrs@26.1.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "attrs",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "26.1.0"
+ },
+ {
+ "SPDXID": "SPDXRef-beartype",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "8f82b54aa723a2848a56008d18875f91c1db02c32ef6a62319a002e3e25a975f"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "da867f7418a7e35ae5b8495b505000f0"
+ }
+ ],
+ "copyrightText": "copyright 2021, @leycec\nCopyright (c) 2014-2025 Beartype\nCOPYRIGHT 2014-2025 Beartype authors\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/c7/94/1009e248bbfbab11397abca7193bea6626806be9a327d399810d523a07cb/beartype-0.22.9.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/beartype@0.22.9",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "beartype",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.22.9"
+ },
+ {
+ "SPDXID": "SPDXRef-beautifulsoup4",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "288e3ca7d54b06f2ac191970bc275c1939cb46d450b255bf6718b04aa37ab4f7"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "a9d04db2259b78ec23fcdfddfed5bcb8"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/43/65/318323f98dbee45d42dff61d8f047181bc6f2268a9068cfad035a46be5af/beautifulsoup4-4.15.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/beautifulsoup4@4.15.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "beautifulsoup4",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "4.15.0"
+ },
+ {
+ "SPDXID": "SPDXRef-boolean-py",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "60cbc4bad079753721d32649545505362c754e121570ada4658b852a3a318d95"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "1a7ec75805094c91980b9f11240853c0"
+ }
+ ],
+ "copyrightText": "copyright 2009, Sebastian Kramer\nCopyright (c) 2009, 2010, 2013-2016 by the Brotli Authors\nCopyright (c) Sebastian Kraemer, basti.kr@gmail.com and others\nCopyright (c) 2009-2020 Sebastian Kraemer, basti.kr@gmail.com and others\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/c4/cf/85379f13b76f3a69bca86b60237978af17d6aa0bc5998978c3b8cf05abb2/boolean_py-5.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/boolean-py@5.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "BSD-2-Clause",
+ "licenseDeclared": "BSD-2-Clause",
+ "name": "boolean-py",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "5.0"
+ },
+ {
+ "SPDXID": "SPDXRef-certifi",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "024c88eeec92ca068db80f02b8b07c9cef7b9fe261d1d535abfd5abd6f6af432"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "1af47cd1635599db1f2e598ae6c4d751"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/c9/c7/424b75da314c1045981bd9777432fad05a9e0c69daa4ed7e308bbaffe405/certifi-2026.6.17.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/certifi@2026.6.17",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MPL-2.0",
+ "licenseDeclared": "MPL-2.0",
+ "name": "certifi",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "2026.6.17"
+ },
+ {
+ "SPDXID": "SPDXRef-chardet",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "cc1d4eb92a4ec1c2df3b490836ffa46922e599d34ce0bb75cf41fd2bf6303d56"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "df96bc7067630990c971ea95001f5687"
+ }
+ ],
+ "copyrightText": "Copyright (c) 2026 Dan Blanchard\ncopyright 2026, chardet contributors\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/19/b6/9df434a8eeba2e6628c465a1dfa31034228ef79b26f76f46278f4ef7e49d/chardet-7.4.3.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/chardet@7.4.3",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "0BSD",
+ "licenseDeclared": "0BSD",
+ "name": "chardet",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "7.4.3"
+ },
+ {
+ "SPDXID": "SPDXRef-charset-normalizer",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "ae89db9e5f98a11a4bf50407d4363e7b09b31e55bc117b4f7d80aab97ba009e5"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "68805886064d248d2e5205fd11112d85"
+ }
+ ],
+ "copyrightText": "COPYRIGHT (c) FOOBAR\ncopyright 2023, Ahmed TAHRI\nCopyright (c) 2025 Ahmed TAHRI\nCopyright (c) 2025 TAHRI Ahmed R.\ncopyright (c) 2021 by Ahmed TAHRI\n(c) 2012 Denny Vrandecic (http://simia.net/letters/)\nCopyright (c) Ahmed TAHRI @Ousret (https://github.com/Ousret)\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/e7/a1/67fe25fac3c7642725500a3f6cfe5821ad557c3abb11c9d20d12c7008d3e/charset_normalizer-3.4.7.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/charset-normalizer@3.4.7",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "charset-normalizer",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "3.4.7"
+ },
+ {
+ "SPDXID": "SPDXRef-click",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "918b5633eddf6b41c32d4f454bf0de810065c74e3f7dbf8ee5452f8be88d3e96"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "28bc070cf89b06d88bf74b2d3c4debc7"
+ }
+ ],
+ "copyrightText": "Copyright 2014 Pallets\ncopyright 2014 Pallets\nCopyright 2001-2006 Gregory P. Ward\nCopyright 2002-2006 Python Software Foundation\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/9b/98/518d8e5081007684232226f475082b30087d0f585e8457db087298259f49/click-8.4.1.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/click@8.4.1",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "BSD-3-Clause",
+ "licenseDeclared": "BSD-3-Clause",
+ "name": "click",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "8.4.1"
+ },
+ {
+ "SPDXID": "SPDXRef-commoncode",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "2964ca058cf93f2917048ee3ff03907cf65f8f2034de09992b52063801a91790"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "9678f3e0fe2193b4e6bf0b3862c1f7e3"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/8e/69/50e2f0cac532d373c15b5d41bc9d948cf273b6a6dcf24649e6fbccb82e59/commoncode-32.5.2.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/commoncode@32.5.2",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "NOASSERTION",
+ "licenseDeclared": "NOASSERTION",
+ "name": "commoncode",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "32.5.2"
+ },
+ {
+ "SPDXID": "SPDXRef-fetchcode",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "53ff257905235fb264fe7c151c1eb37c35112dd41464ab1f346e9a5caf0f01c8"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "1b23a010b0706e43ffe0d676eceb176c"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/6e/e2/e8855b0665685cd43ad2da8912ba4c1f8fd77739ce2da451dbb5b89411cd/fetchcode-0.8.2.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/fetchcode@0.8.2",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "Apache-2.0",
+ "licenseDeclared": "Apache-2.0",
+ "name": "fetchcode",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.8.2"
+ },
+ {
+ "SPDXID": "SPDXRef-fusepy",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "72ff783ec2f43de3ab394e3f7457605bf04c8cf288a2f4068b4cde141d4ee6bd"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "d383a3c6742755039ba51b6f3f919d5f"
+ }
+ ],
+ "copyrightText": "Copyright (c) 2012 Terence Honles \nCopyright (c) 2008 Giorgos Verigakis \n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/04/0b/4506cb2e831cea4b0214d3625430e921faaa05a7fb520458c75a2dbd2152/fusepy-3.0.1.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/fusepy@3.0.1",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "ISC",
+ "licenseDeclared": "ISC",
+ "name": "fusepy",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "3.0.1"
+ },
+ {
+ "SPDXID": "SPDXRef-html5lib",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "b2e5b40261e20f354d198eae92afc10d750afb487ed5e50f9c4eaf07c184146f"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "6748742e2ec4cb99287a6bc82bcfe2b0"
+ }
+ ],
+ "copyrightText": "(c) OY H-aaoY\nCopyright (c) 2006-2013 James Graham and other contributors\nCopyright (c) 2006-2013 James Graham, Geoffrey Sneddon, and other contributors\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/ac/b6/b55c3f49042f1df3dcd422b7f224f939892ee94f22abcf503a9b7339eaf2/html5lib-1.1.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/html5lib@1.1",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "html5lib",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "1.1"
+ },
+ {
+ "SPDXID": "SPDXRef-htmllistparse",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "6dc8a6bf03c843b9d325843a26a2351a795b573cd92a2c9b8271621019c64082"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "3e8ffe2e64318ad9c3875bf0678bc724"
+ }
+ ],
+ "copyrightText": "Copyright (c) 2016-2017 Dingyuan Wang\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/47/4f/6c57a2817e4f20c1ed8dcca24ee036f981ed036f4b36d07a0100303db96a/htmllistparse-0.6.1.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/htmllistparse@0.6.1",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "htmllistparse",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.6.1"
+ },
+ {
+ "SPDXID": "SPDXRef-idna",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "ffb385a7e039654cef1ab9ef32c6fafe283c0c0467bba1d9029738ce4a14a848"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "64359467ec86d86e398b1ae614e5718c"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/cd/63/9496c57188a2ee585e0f1db071d75089a11e98aa86eb99d9d7618fc1edce/idna-3.18.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/idna@3.18",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "BSD-3-Clause",
+ "licenseDeclared": "BSD-3-Clause",
+ "name": "idna",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "3.18"
+ },
+ {
+ "SPDXID": "SPDXRef-license-expression",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "73448f0aacd8d0808895bdc4b2c8e01a8d67646e4188f887375398c761f340fd"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "933c9e708aba564bec664357771709d7"
+ }
+ ],
+ "copyrightText": "Copyright (c) nexB Inc.\nCopyright (c) Giovanni Bussi\nCopyright (c) 2019 Giovanni Bussi\nCopyright (c) nexB Inc. and others.\ncopyright nexB Inc., AboutCode and others\nCopyright (c) 2008-2020 The pip developers\nCopyright (c) nexB Inc. AboutCode, and others\ncopyright 2010 David Wolever \nCopyright (c) 2010 David Wolever \nCopyright (c) 2010 David Wolever . All rights reserved.\nCopyright (c) nexB Inc. and others. All rights reserved.\nCopyright (c) nexB Inc. AboutCode, and others. All rights reserved.\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/40/71/d89bb0e71b1415453980fd32315f2a037aad9f7f70f695c7cec7035feb13/license_expression-30.4.4.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/license-expression@30.4.4",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "Apache-2.0",
+ "licenseDeclared": "Apache-2.0",
+ "name": "license-expression",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "30.4.4"
+ },
+ {
+ "SPDXID": "SPDXRef-ntia-conformance-checker",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "af4262a06560fcdaf05025522907977977c904538d4697fc44bc72bc29a853f2"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "4c445d1df5e2b00d70d62e20f3d6151e"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/91/35/3f10225852dffe0b9cf368cc63d13c5600ca4102e23d02eca9aa961e53ea/ntia_conformance_checker-5.0.3.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/ntia-conformance-checker@5.0.3",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "Apache-2.0",
+ "licenseDeclared": "Apache-2.0",
+ "name": "ntia-conformance-checker",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "5.0.3"
+ },
+ {
+ "SPDXID": "SPDXRef-packageurl-python",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "1252ce3a102372ca6f86eb968e16f9014c4ba511c5c37d95a7f023e2ca6e5c25"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "17b4e2291bacd545758f1c466f3db7b3"
+ }
+ ],
+ "copyrightText": "Copyright (c) the purl authors\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/f5/d6/3b5a4e3cfaef7a53869a26ceb034d1ff5e5c27c814ce77260a96d50ab7bb/packageurl_python-0.17.6.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/packageurl-python@0.17.6",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "packageurl-python",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.17.6"
+ },
+ {
+ "SPDXID": "SPDXRef-ply",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "6465f602e656455affcd7c5734c638f8"
+ }
+ ],
+ "copyrightText": "Copyright (c) 2001-2018 David M. Beazley (Dabeaz LLC)\nDavid Beazley (http://www.dabeaz.com) Copyright (c) 2007\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/e5/69/882ee5c9d017149285cab114ebeab373308ef0f874fcdac9beb90e0ac4da/ply-3.11.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/ply@3.11",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "BSD-3-Clause",
+ "licenseDeclared": "BSD-3-Clause",
+ "name": "ply",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "3.11"
+ },
+ {
+ "SPDXID": "SPDXRef-prettytable",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "439217116152244369caf3d9f1caf2f9fe29b03bd79e88d2928c8e718c95d680"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "74b207a4799266653b11a5530f1d5a77"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/81/74/ba08d81e668ccfe8658d7520a307e63c19862c08eb4ccb26f356c5239a7a/prettytable-3.18.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/prettytable@3.18.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "BSD-3-Clause",
+ "licenseDeclared": "BSD-3-Clause",
+ "name": "prettytable",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "3.18.0"
+ },
+ {
+ "SPDXID": "SPDXRef-pyparsing",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "c777f4d763f140633dcb6d8a3eda953bf7a214dc4eff598413c070bcdc117cbc"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "ca3bea68cd1a84584b68cd7bed679464"
+ }
+ ],
+ "copyrightText": "Copyright 2004, Paul McGuire\nCopyright 2006, Paul McGuire\nCopyright 2008 Chris Lambrou\nCopyright 2008, Paul McGuire\nCopyright 2010, Paul McGuire\nCopyright 2011, Paul McGuire\nCopyright 2015, Paul McGuire\nCopyright 2016, Paul McGuire\nCopyright 2018, Paul McGuire\nCopyright 2019, Paul McGuire\nCopyright 2020, Paul McGuire\nCopyright 2021, Paul McGuire\nCopyright 2023, Paul McGuire\nCopyright 2024, Paul McGuire\nCopyright Paul McGuire, 2019\nCopyright Paul McGuire, 2021\ncopyright 2006, Paul McGuire\nCopyright, 2010, Paul McGuire\nCopyright, 2007 - Paul McGuire\nCopyright, 2012 - Paul McGuire\nCopyright 2006, by Paul McGuire\nCopyright 2008, by Paul McGuire\nCopyright 2012, Paul T. McGuire\nCopyright 2022, by Paul McGuire\nCopyright 2024, by Paul McGuire\nCopyright (c) 2003, Paul McGuire\nCopyright (c) 2004, Paul McGuire\nCopyright (c) 2006, Paul McGuire\nCopyright (c) 2016, Paul McGuire\nCopyright (c) 2024, Paul McGuire\nCopyright 2010,2019 Paul McGuire\nCopyright, 2006, by Paul McGuire\nCopyright 2002-2021, Paul McGuire\nCopyright 2005-2006, Paul McGuire\nCopyright 2009, 2011 Paul McGuire\nCopyright (c) 2018 Paul T. McGuire\nCopyright Ellis & Grant, Inc. 2005\nCopyright 2003-2019 by Paul McGuire\nCopyright 2011,2015 Paul T. McGuire\nCopyright (c) 2003,2019 Paul McGuire\nCopyright (c) 2003-2024 Paul McGuire\nCopyright (c) 2003-2025 Paul McGuire\nCopyright (c) 2006,2016 Paul McGuire\nCopyright 2003, 2019 by Paul McGuire\nCopyright 2004-2016, by Paul McGuire\nCopyright 2007, 2023 by Paul McGuire\nCopyright 2007-2011, by Paul McGuire\nCopyright 2010, 2019 by Paul McGuire\nCopyright 2012, 2019 Paul T. McGuire\ncopyright 2018-2024, Paul T. McGuire\nCopyright (c) 2003,2016, Paul McGuire\nCopyright (c) 2004, 2006 Paul McGuire\nCopyright (c) 2004-2016, Paul McGuire\nCopyright (c) 2006, 2019, Paul McGuire\nCopyright (c) 2003-2022 Paul T. McGuire\nCopyright (c) 2004-2011 Paul T. McGuire\nCopyright (c) 2006, 2016, 2023, Paul McGuire\nCopyright (c) 2006, Estrate, the Netherlands\nCopyright 1989 by Carnegie Mellon University\nCopyright 2004-2010, by Paul McGuire September, 2010\nCopyright Petri Savolainen \nCopyright 2004, by Alberto Santini http://www.albertosantini.it/chess\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/f3/91/9c6ee907786a473bf81c5f53cf703ba0957b23ab84c264080fb5a450416f/pyparsing-3.3.2.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/pyparsing@3.3.2",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "pyparsing",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "3.3.2"
+ },
+ {
+ "SPDXID": "SPDXRef-python-dateutil",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "81cb6aad924ef40ebfd3d62eaebe47c6"
+ }
+ ],
+ "copyrightText": "copyright 2019, dateutil\nCopyright 2017- dateutil contributors\nCopyright (c) 2015- - dateutil contributors\nCopyright 2017- Paul Ganssle \nCopyright (c) 2015- - Paul Ganssle \nCopyright (c) 2014-2016 - Yaron de Leeuw \nCopyright (c) 2003-2011 - Gustavo Niemeyer \nCopyright (c) 2012-2014 - Tomi Pievilainen \n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/python-dateutil@2.9.0.post0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "Apache-2.0 AND LicenseRef-unknown-License-OSI-Approved-BSD-License",
+ "licenseDeclared": "Apache-2.0 AND LicenseRef-unknown-License-OSI-Approved-BSD-License",
+ "name": "python-dateutil",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "2.9.0.post0"
+ },
+ {
+ "SPDXID": "SPDXRef-python-dotenv",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "2c371a91fbd7ba082c2c1dc1f8bf89ca22564a087c2c287cd9b662adde799cf3"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "74d7de20ea73ed77c5a0c2a5d9c39764"
+ }
+ ],
+ "copyrightText": "Copyright (c) 2014, Saurabh Kumar\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/82/ed/0301aeeac3e5353ef3d94b6ec08bbcabd04a72018415dcb29e588514bba8/python_dotenv-1.2.2.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/python-dotenv@1.2.2",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "BSD-3-Clause",
+ "licenseDeclared": "BSD-3-Clause",
+ "name": "python-dotenv",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "1.2.2"
+ },
+ {
+ "SPDXID": "SPDXRef-pyyaml",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "dbc6f815cd75160ccf12e470be1c8d6e"
+ }
+ ],
+ "copyrightText": "Copyright (c) 2017-2021 Ingy\nCopyright (c) 2006-2016 Kirill Simonov\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/pyyaml@6.0.3",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "pyyaml",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "6.0.3"
+ },
+ {
+ "SPDXID": "SPDXRef-rdflib",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "6c831288d5e4a5a7ece85d0ccde9877d512a3d0f02d7c06455d00d6d0ea379df"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "11bd8e278d1c1e5628ace31a7db904a4"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/98/f5/18bb77b7af9526add0c727a3b2048959847dc5fb030913e2918bf384fec3/rdflib-7.6.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/rdflib@7.6.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "BSD-3-Clause",
+ "licenseDeclared": "BSD-3-Clause",
+ "name": "rdflib",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "7.6.0"
+ },
+ {
+ "SPDXID": "SPDXRef-requests",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "f288924cae4e29463698d6d60bc6a4da69c89185ad1e0bcc4104f584e960b9ed"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "611e438d0803e962500225f9807a475e"
+ }
+ ],
+ "copyrightText": "Copyright Kenneth Reitz\nCopyright 2019 Kenneth Reitz\ncopyright (c) 2012 by Kenneth Reitz\ncopyright (c) 2017 by Kenneth Reitz\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/ac/c3/e2a2b89f2d3e2179abd6d00ebd70bff6273f37fb3e0cc209f48b39d00cbf/requests-2.34.2.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/requests@2.34.2",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "Apache-2.0",
+ "licenseDeclared": "Apache-2.0",
+ "name": "requests",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "2.34.2"
+ },
+ {
+ "SPDXID": "SPDXRef-saneyaml",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "19cfbd8bf94d730998162c790fe5cec9abb5300cc5890fe37dc6dbcaa8fb16bb"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "0ab1ec694c2c004035d1d42c17ac47b0"
+ }
+ ],
+ "copyrightText": "Copyright (c) Python\nCopyright (c) nexB Inc.\ncopyright of Pete Harlow\nCopyright (c) 1990-2, RSA\nCopyright (c) 1991-2, RSA\nCopyright (c) 2004 Infrae\nCopyright (c) 2009 Gerhard\nCopyright (c) 2013-2017 nexB\nCopyright (c) 2013-2017, Kim\nCopyright (c) Giovanni Bussi\ncopyright 1992 by Eric Haines\ncopyright nexB Inc. and others\nCopyright (c) 2008-2020 The pip\nCopyright (c) 2009 Gerhard Weis\nCopyright (c) 2013-2017 nexB Inc.\nCopyright (c) 2019 Giovanni Bussi\nCopyright (c) Ian F. Darwin, 1987\nCopyright (c) Python contributors\nCopyright RSA Data Security, Inc.\ncopyright RSA Data Security, Inc.\nCopyright (c) nexB Inc. and others.\nCopyright (c) 1996-1997 Cisco Systems\ncopyright by the University of Cambridge\n(c) Copyright 1993,1994 by Carnegie Mellon\nCopyright (c) 2008-2020 The pip developers\nCopyright (c) Zeus Technology Limited 1996\nCopyright (c) 1993, 1994 by Carnegie Mellon\nCopyright (c) 1996-1997 Cisco Systems, Inc.\nCopyright (c) 2000-2002 The Apache Software\nCopyright (c) 1994, Jeff Hostetler, Spyglass\ncopyright 1992 by Eric Haines, erich@eye.com\nCopyright (c) 1990-2, RSA Data Security, Inc.\nCopyright (c) 1991-2, RSA Data Security, Inc.\nCopyright (c) 2004 Infrae.', description' lxml\nCopyright (c) 1991 Bell Communications Research\nCopyright (c) 1997-2001 University of Cambridge\ncopyright 2010 David Wolever \ncopyright by the University of Cambridge, England\nCopyright (c) 1994, Jeff Hostetler, Spyglass, Inc.\nCopyright (c) 2010 David Wolever \n(c) Copyright 1993,1994 by Carnegie Mellon University\nCopyright (c) 1991 Bell Communications Research, Inc.\nCopyright (c) 1993, 1994 by Carnegie Mellon University\nCopyright (c) 2000-2002 The Apache Software Foundation\nCopyright (c) 2010 David Wolever . All rights reserved.\nCopyright (c) nexB Inc. and others. All rights reserved.\nCopyright 1991 by the Massachusetts Institute of Technology\nCopyright (c) 1995, Board of Trustees of the University of Illinois\nCopyright (c) 2009 Free Software Foundation, Inc. \nCopyright (c) Ian F. Darwin 1986, 1987, 1989, 1990, 1991, 1992, 1994, 1995\nCopyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark\nCopyright (c) 2013-2017, Kim Davies description Internationalized Domain Names\nCopyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper\ncopyright Steinar H. Gunderson and Knut Auvor Grythe \n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/18/bb/b3ab128fe13964fc8da25ecbac82f9ed9beb59b2e04bfbef433886f1acb0/saneyaml-0.6.1.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/saneyaml@0.6.1",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "Apache-2.0",
+ "licenseDeclared": "Apache-2.0",
+ "name": "saneyaml",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.6.1"
+ },
+ {
+ "SPDXID": "SPDXRef-semantic-version",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "bdabb6d336998cbb378d4b9db3a4b56a1e3235701dc05ea2690d9a997ed5041c"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "e48abef93ba69abcd4eaf4640edfc38b"
+ }
+ ],
+ "copyrightText": "Copyright (c) The python-semanticversion project\ncopyright u'2012-2019, The python-semanticversion project\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/7d/31/f2289ce78b9b473d582568c234e104d2a342fd658cc288a7553d83bb8595/semantic_version-2.10.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/semantic-version@2.10.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "BSD-2-Clause",
+ "licenseDeclared": "BSD-2-Clause",
+ "name": "semantic-version",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "2.10.0"
+ },
+ {
+ "SPDXID": "SPDXRef-six",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "a0387fe15662c71057b4fb2b7aa9056a"
+ }
+ ],
+ "copyrightText": "Copyright (c) 2010-2024 Benjamin Peterson\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/six@1.17.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "six",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "1.17.0"
+ },
+ {
+ "SPDXID": "SPDXRef-soupsieve",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "e121fd02e975c695e4e9e8774a5ee35d74714b59307868dcc5319ad2d9e3328e"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "6afa60ca1795634136ee3ce3a24fb7cc"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/47/2c/0a5f6f8ee0d5589e48c7640213ed5175d52cf540a06725b628cc1a45d6ce/soupsieve-2.8.4.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/soupsieve@2.8.4",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "soupsieve",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "2.8.4"
+ },
+ {
+ "SPDXID": "SPDXRef-spdx-python-model",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "bdec725398babcbdd4bcb7c16cf23497d06a48d0ef3ea1edb19a3b0d431ab8c1"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "07960215af05ac5e1e6422705ce0e32d"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/68/11/43a4a60f929d41a3e681763728bbba6acf5f3997e68c355551b740d1a9c9/spdx_python_model-0.0.4.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/spdx-python-model@0.0.4",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "Apache-2.0",
+ "licenseDeclared": "Apache-2.0",
+ "name": "spdx-python-model",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.0.4"
+ },
+ {
+ "SPDXID": "SPDXRef-spdx-tools",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "be600beb2f762f0116025e05490d399e724f668bef84025a7c421bb266688bdb"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "1f57f1eb5bdbc42d3de855d3f2701dfe"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/2f/99/33383f587b59cbd191cc1c0fd5408e550b9275e0090d32561cbddc973fdc/spdx_tools-0.8.5.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/spdx-tools@0.8.5",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "Apache-2.0",
+ "licenseDeclared": "Apache-2.0",
+ "name": "spdx-tools",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.8.5"
+ },
+ {
+ "SPDXID": "SPDXRef-text-unidecode",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "bad6603bb14d279193107714b288be206cac565dfa49aa5b105294dd5c4aab93"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "53a0a6c5aef8f5eb5834e78e0fdf0499"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/ab/e2/e9a00f0ccb71718418230718b3d900e71a5d16e701a3dae079a21e9cd8f8/text-unidecode-1.3.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/text-unidecode@1.3",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "GPL-2.0-or-later AND LicenseRef-unknown-License-OSI-Approved-Artistic-License AND LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL",
+ "licenseDeclared": "GPL-2.0-or-later AND LicenseRef-unknown-License-OSI-Approved-Artistic-License AND LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL",
+ "name": "text-unidecode",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "1.3"
+ },
+ {
+ "SPDXID": "SPDXRef-typing-extensions",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "079e529d0b271647f3ec2720aee8fc65"
+ }
+ ],
+ "copyrightText": "Copyright (c) 1995-2001 Corporation for National Research Initiatives\nCopyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, The Netherlands\nCopyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python Software Foundation\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/typing-extensions@4.15.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "PSF-2.0",
+ "licenseDeclared": "PSF-2.0",
+ "name": "typing-extensions",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "4.15.0"
+ },
+ {
+ "SPDXID": "SPDXRef-uritools",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "fa60028843a8be651699a1ee2b399066eeaef349224b32a177efa4aeba463f00"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "ac0c714d0f00d2bb5e8145e51b3650c8"
+ }
+ ],
+ "copyrightText": "NOASSERTION",
+ "downloadLocation": "https://files.pythonhosted.org/packages/d7/75/b1f0e26e0c080c2febdd3a98a752c9fbcf078778f60fe90ea489dc8226ed/uritools-6.1.2.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/uritools@6.1.2",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "uritools",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "6.1.2"
+ },
+ {
+ "SPDXID": "SPDXRef-urllib3",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "e79707b798a66c8165c9c441440f4e80"
+ }
+ ],
+ "copyrightText": "Copyright 2019-2022, Pyodide contributors\n2019-2022 Pyodide contributors and Mozilla\nCopyright (c) 2019-2022, Pyodide contributors\nCopyright (c) 2008-2020 Andrey Petrov and contributors\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/53/0c/06f8b233b8fd13b9e5ee11424ef85419ba0d8ba0b3138bf360be2ff56953/urllib3-2.7.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/urllib3@2.7.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "urllib3",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "2.7.0"
+ },
+ {
+ "SPDXID": "SPDXRef-validators",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "992d6c48a4e77c81f1b4daba10d16c3a9bb0dbb79b3a19ea847ff0928e70497a"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "8376f37ec2028053cee8f4789dadd947"
+ }
+ ],
+ "copyrightText": "COPYRIGHT 2013 - 2025, Konsta Vesterinen\nCopyright (c) 2013 - 2025 Konsta Vesterinen\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/53/66/a435d9ae49850b2f071f7ebd8119dd4e84872b01630d6736761e6e7fd847/validators-0.35.0.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/validators@0.35.0",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "validators",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.35.0"
+ },
+ {
+ "SPDXID": "SPDXRef-wcwidth",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "faf5b4a5366a72dc49cad48cdf21f52bdf63bdda995178e483ba247ff79089b9"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "7bd48380fd85a92d77b2dbb9d412ad99"
+ }
+ ],
+ "copyrightText": "(c) 2025 Unicode(r), Inc.\n(c) E0.6 copyright 00AE FE0F\nCopyright (c) 2014 Jeff Quast \n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/49/b4/51fe890511f0f242d07cb1ebe6a5b6db417262b9d2568b460347c57d95cc/wcwidth-0.8.1.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/wcwidth@0.8.1",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "wcwidth",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.8.1"
+ },
+ {
+ "SPDXID": "SPDXRef-webencodings",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "32f6e261d52e57bf7e1c4d41546d15b8"
+ }
+ ],
+ "copyrightText": "Copyright 2012 by Simon Sapin\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/webencodings@0.5.1",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "LicenseRef-unknown-License-OSI-Approved-BSD-License",
+ "licenseDeclared": "LicenseRef-unknown-License-OSI-Approved-BSD-License",
+ "name": "webencodings",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "0.5.1"
+ },
+ {
+ "SPDXID": "SPDXRef-xmltodict",
+ "checksums": [
+ {
+ "algorithm": "SHA256",
+ "checksumValue": "6d94c9f834dd9e44514162799d344d815a3a4faec913717a9ecbfa5be1bb8e61"
+ },
+ {
+ "algorithm": "MD5",
+ "checksumValue": "f0a83032fc31c918a8cd9e60cdb46cb1"
+ }
+ ],
+ "copyrightText": "Copyright (c) 2012 Martin Blech and individual contributors\n",
+ "downloadLocation": "https://files.pythonhosted.org/packages/19/70/80f3b7c10d2630aa66414bf23d210386700aa390547278c789afa994fd7e/xmltodict-1.0.4.tar.gz",
+ "externalRefs": [
+ {
+ "referenceCategory": "PACKAGE_MANAGER",
+ "referenceLocator": "pkg:pypi/xmltodict@1.0.4",
+ "referenceType": "purl"
+ }
+ ],
+ "filesAnalyzed": false,
+ "licenseConcluded": "MIT",
+ "licenseDeclared": "MIT",
+ "name": "xmltodict",
+ "supplier": "Organization: https://pypi.org",
+ "versionInfo": "1.0.4"
+ }
+ ],
+ "relationships": [
+ {
+ "spdxElementId": "SPDXRef-DOCUMENT",
+ "relatedSpdxElement": "SPDXRef-openchain-telco-sbom-validator",
+ "relationshipType": "DESCRIBES"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-attrs",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-beartype",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-beautifulsoup4",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-boolean-py",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-certifi",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-chardet",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-charset-normalizer",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-click",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-commoncode",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-fetchcode",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-fusepy",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-html5lib",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-htmllistparse",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-idna",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-license-expression",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-ntia-conformance-checker",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-packageurl-python",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-ply",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-prettytable",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-pyparsing",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-python-dateutil",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-python-dotenv",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-pyyaml",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-rdflib",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-requests",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-saneyaml",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-semantic-version",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-six",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-soupsieve",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-spdx-python-model",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-spdx-tools",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-text-unidecode",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-typing-extensions",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-uritools",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-urllib3",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-validators",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-wcwidth",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-webencodings",
+ "relationshipType": "CONTAINS"
+ },
+ {
+ "spdxElementId": "SPDXRef-openchain-telco-sbom-validator",
+ "relatedSpdxElement": "SPDXRef-xmltodict",
+ "relationshipType": "CONTAINS"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx.yaml b/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx.yaml
new file mode 100644
index 0000000..ed1d3a5
--- /dev/null
+++ b/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx.yaml
@@ -0,0 +1,1256 @@
+SPDXID: SPDXRef-DOCUMENT
+creationInfo:
+ comment: 'CISA SBOM type: Analyzed
+
+ This SBOM was created with Python version 3.14.6'
+ created: '2026-06-24T15:24:14Z'
+ creators:
+ - 'Organization: Nokia'
+ - 'Tool: pypispdx - 0.3.1'
+ licenseListVersion: '3.28'
+dataLicense: CC0-1.0
+documentNamespace: https://pypi.org/spdx/openchain-telco-sbom-validator-0.3.5
+hasExtractedLicensingInfos:
+- extractedText: 'License :: OSI Approved :: BSD License'
+ licenseId: LicenseRef-unknown-License-OSI-Approved-BSD-License
+ name: unknown-License-OSI-Approved-BSD-License
+- extractedText: 'License :: OSI Approved :: Artistic License'
+ licenseId: LicenseRef-unknown-License-OSI-Approved-Artistic-License
+ name: unknown-License-OSI-Approved-Artistic-License
+- extractedText: 'License :: OSI Approved :: GNU General Public License (GPL)'
+ licenseId: LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL
+ name: unknown-License-OSI-Approved-GNU-General-Public-License-GPL
+name: openchain-telco-sbom-validator-0.3.5
+packages:
+- SPDXID: SPDXRef-openchain-telco-sbom-validator
+ checksums:
+ - algorithm: SHA256
+ checksumValue: a722d07a6f0aa2bb3aaba788f4494973d2b529a0b2e4662723261ae302c64161
+ - algorithm: MD5
+ checksumValue: 3604ac3d65b6cda762a4f35eb8cd0c3c
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/0d/db/8a3663d33288a5efdeb6cc57cfb9d5be39cb659d41dd753636afa44679a2/openchain_telco_sbom_validator-0.3.5.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/openchain-telco-sbom-validator@0.3.5
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: Apache-2.0
+ licenseDeclared: Apache-2.0
+ name: openchain-telco-sbom-validator
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.3.5
+- SPDXID: SPDXRef-attrs
+ checksums:
+ - algorithm: SHA256
+ checksumValue: d03ceb89cb322a8fd706d4fb91940737b6642aa36998fe130a9bc96c985eff32
+ - algorithm: MD5
+ checksumValue: 633953d1aa39cfa76c733a20fdd9c196
+ copyrightText: '(c) N Revealed
+
+ Copyright (c) 2015 Hynek Schlawack
+
+ Copyright ..." is shown in the HTML footer. Default is True.
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/9a/8e/82a0fe20a541c03148528be8cac2408564a6c9a0cc7e9171802bc1d26985/attrs-26.1.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/attrs@26.1.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: attrs
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 26.1.0
+- SPDXID: SPDXRef-beartype
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 8f82b54aa723a2848a56008d18875f91c1db02c32ef6a62319a002e3e25a975f
+ - algorithm: MD5
+ checksumValue: da867f7418a7e35ae5b8495b505000f0
+ copyrightText: 'copyright 2021, @leycec
+
+ Copyright (c) 2014-2025 Beartype
+
+ COPYRIGHT 2014-2025 Beartype authors
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/c7/94/1009e248bbfbab11397abca7193bea6626806be9a327d399810d523a07cb/beartype-0.22.9.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/beartype@0.22.9
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: beartype
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.22.9
+- SPDXID: SPDXRef-beautifulsoup4
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 288e3ca7d54b06f2ac191970bc275c1939cb46d450b255bf6718b04aa37ab4f7
+ - algorithm: MD5
+ checksumValue: a9d04db2259b78ec23fcdfddfed5bcb8
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/43/65/318323f98dbee45d42dff61d8f047181bc6f2268a9068cfad035a46be5af/beautifulsoup4-4.15.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/beautifulsoup4@4.15.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: beautifulsoup4
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 4.15.0
+- SPDXID: SPDXRef-boolean-py
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 60cbc4bad079753721d32649545505362c754e121570ada4658b852a3a318d95
+ - algorithm: MD5
+ checksumValue: 1a7ec75805094c91980b9f11240853c0
+ copyrightText: 'copyright 2009, Sebastian Kramer
+
+ Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors
+
+ Copyright (c) Sebastian Kraemer, basti.kr@gmail.com and others
+
+ Copyright (c) 2009-2020 Sebastian Kraemer, basti.kr@gmail.com and others
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/c4/cf/85379f13b76f3a69bca86b60237978af17d6aa0bc5998978c3b8cf05abb2/boolean_py-5.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/boolean-py@5.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: BSD-2-Clause
+ licenseDeclared: BSD-2-Clause
+ name: boolean-py
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: '5.0'
+- SPDXID: SPDXRef-certifi
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 024c88eeec92ca068db80f02b8b07c9cef7b9fe261d1d535abfd5abd6f6af432
+ - algorithm: MD5
+ checksumValue: 1af47cd1635599db1f2e598ae6c4d751
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/c9/c7/424b75da314c1045981bd9777432fad05a9e0c69daa4ed7e308bbaffe405/certifi-2026.6.17.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/certifi@2026.6.17
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MPL-2.0
+ licenseDeclared: MPL-2.0
+ name: certifi
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 2026.6.17
+- SPDXID: SPDXRef-chardet
+ checksums:
+ - algorithm: SHA256
+ checksumValue: cc1d4eb92a4ec1c2df3b490836ffa46922e599d34ce0bb75cf41fd2bf6303d56
+ - algorithm: MD5
+ checksumValue: df96bc7067630990c971ea95001f5687
+ copyrightText: 'Copyright (c) 2026 Dan Blanchard
+
+ copyright 2026, chardet contributors
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/19/b6/9df434a8eeba2e6628c465a1dfa31034228ef79b26f76f46278f4ef7e49d/chardet-7.4.3.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/chardet@7.4.3
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: 0BSD
+ licenseDeclared: 0BSD
+ name: chardet
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 7.4.3
+- SPDXID: SPDXRef-charset-normalizer
+ checksums:
+ - algorithm: SHA256
+ checksumValue: ae89db9e5f98a11a4bf50407d4363e7b09b31e55bc117b4f7d80aab97ba009e5
+ - algorithm: MD5
+ checksumValue: 68805886064d248d2e5205fd11112d85
+ copyrightText: 'COPYRIGHT (c) FOOBAR
+
+ copyright 2023, Ahmed TAHRI
+
+ Copyright (c) 2025 Ahmed TAHRI
+
+ Copyright (c) 2025 TAHRI Ahmed R.
+
+ copyright (c) 2021 by Ahmed TAHRI
+
+ (c) 2012 Denny Vrandecic (http://simia.net/letters/)
+
+ Copyright (c) Ahmed TAHRI @Ousret (https://github.com/Ousret)
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/e7/a1/67fe25fac3c7642725500a3f6cfe5821ad557c3abb11c9d20d12c7008d3e/charset_normalizer-3.4.7.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/charset-normalizer@3.4.7
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: charset-normalizer
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 3.4.7
+- SPDXID: SPDXRef-click
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 918b5633eddf6b41c32d4f454bf0de810065c74e3f7dbf8ee5452f8be88d3e96
+ - algorithm: MD5
+ checksumValue: 28bc070cf89b06d88bf74b2d3c4debc7
+ copyrightText: 'Copyright 2014 Pallets
+
+ copyright 2014 Pallets
+
+ Copyright 2001-2006 Gregory P. Ward
+
+ Copyright 2002-2006 Python Software Foundation
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/9b/98/518d8e5081007684232226f475082b30087d0f585e8457db087298259f49/click-8.4.1.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/click@8.4.1
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: BSD-3-Clause
+ licenseDeclared: BSD-3-Clause
+ name: click
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 8.4.1
+- SPDXID: SPDXRef-commoncode
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 2964ca058cf93f2917048ee3ff03907cf65f8f2034de09992b52063801a91790
+ - algorithm: MD5
+ checksumValue: 9678f3e0fe2193b4e6bf0b3862c1f7e3
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/8e/69/50e2f0cac532d373c15b5d41bc9d948cf273b6a6dcf24649e6fbccb82e59/commoncode-32.5.2.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/commoncode@32.5.2
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: NOASSERTION
+ licenseDeclared: NOASSERTION
+ name: commoncode
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 32.5.2
+- SPDXID: SPDXRef-fetchcode
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 53ff257905235fb264fe7c151c1eb37c35112dd41464ab1f346e9a5caf0f01c8
+ - algorithm: MD5
+ checksumValue: 1b23a010b0706e43ffe0d676eceb176c
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/6e/e2/e8855b0665685cd43ad2da8912ba4c1f8fd77739ce2da451dbb5b89411cd/fetchcode-0.8.2.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/fetchcode@0.8.2
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: Apache-2.0
+ licenseDeclared: Apache-2.0
+ name: fetchcode
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.8.2
+- SPDXID: SPDXRef-fusepy
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 72ff783ec2f43de3ab394e3f7457605bf04c8cf288a2f4068b4cde141d4ee6bd
+ - algorithm: MD5
+ checksumValue: d383a3c6742755039ba51b6f3f919d5f
+ copyrightText: 'Copyright (c) 2012 Terence Honles
+
+ Copyright (c) 2008 Giorgos Verigakis
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/04/0b/4506cb2e831cea4b0214d3625430e921faaa05a7fb520458c75a2dbd2152/fusepy-3.0.1.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/fusepy@3.0.1
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: ISC
+ licenseDeclared: ISC
+ name: fusepy
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 3.0.1
+- SPDXID: SPDXRef-html5lib
+ checksums:
+ - algorithm: SHA256
+ checksumValue: b2e5b40261e20f354d198eae92afc10d750afb487ed5e50f9c4eaf07c184146f
+ - algorithm: MD5
+ checksumValue: 6748742e2ec4cb99287a6bc82bcfe2b0
+ copyrightText: '(c) OY H-aaoY
+
+ Copyright (c) 2006-2013 James Graham and other contributors
+
+ Copyright (c) 2006-2013 James Graham, Geoffrey Sneddon, and other contributors
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/ac/b6/b55c3f49042f1df3dcd422b7f224f939892ee94f22abcf503a9b7339eaf2/html5lib-1.1.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/html5lib@1.1
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: html5lib
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: '1.1'
+- SPDXID: SPDXRef-htmllistparse
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 6dc8a6bf03c843b9d325843a26a2351a795b573cd92a2c9b8271621019c64082
+ - algorithm: MD5
+ checksumValue: 3e8ffe2e64318ad9c3875bf0678bc724
+ copyrightText: 'Copyright (c) 2016-2017 Dingyuan Wang
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/47/4f/6c57a2817e4f20c1ed8dcca24ee036f981ed036f4b36d07a0100303db96a/htmllistparse-0.6.1.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/htmllistparse@0.6.1
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: htmllistparse
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.6.1
+- SPDXID: SPDXRef-idna
+ checksums:
+ - algorithm: SHA256
+ checksumValue: ffb385a7e039654cef1ab9ef32c6fafe283c0c0467bba1d9029738ce4a14a848
+ - algorithm: MD5
+ checksumValue: 64359467ec86d86e398b1ae614e5718c
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/cd/63/9496c57188a2ee585e0f1db071d75089a11e98aa86eb99d9d7618fc1edce/idna-3.18.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/idna@3.18
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: BSD-3-Clause
+ licenseDeclared: BSD-3-Clause
+ name: idna
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: '3.18'
+- SPDXID: SPDXRef-license-expression
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 73448f0aacd8d0808895bdc4b2c8e01a8d67646e4188f887375398c761f340fd
+ - algorithm: MD5
+ checksumValue: 933c9e708aba564bec664357771709d7
+ copyrightText: 'Copyright (c) nexB Inc.
+
+ Copyright (c) Giovanni Bussi
+
+ Copyright (c) 2019 Giovanni Bussi
+
+ Copyright (c) nexB Inc. and others.
+
+ copyright nexB Inc., AboutCode and others
+
+ Copyright (c) 2008-2020 The pip developers
+
+ Copyright (c) nexB Inc. AboutCode, and others
+
+ copyright 2010 David Wolever
+
+ Copyright (c) 2010 David Wolever
+
+ Copyright (c) 2010 David Wolever . All rights reserved.
+
+ Copyright (c) nexB Inc. and others. All rights reserved.
+
+ Copyright (c) nexB Inc. AboutCode, and others. All rights reserved.
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/40/71/d89bb0e71b1415453980fd32315f2a037aad9f7f70f695c7cec7035feb13/license_expression-30.4.4.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/license-expression@30.4.4
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: Apache-2.0
+ licenseDeclared: Apache-2.0
+ name: license-expression
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 30.4.4
+- SPDXID: SPDXRef-ntia-conformance-checker
+ checksums:
+ - algorithm: SHA256
+ checksumValue: af4262a06560fcdaf05025522907977977c904538d4697fc44bc72bc29a853f2
+ - algorithm: MD5
+ checksumValue: 4c445d1df5e2b00d70d62e20f3d6151e
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/91/35/3f10225852dffe0b9cf368cc63d13c5600ca4102e23d02eca9aa961e53ea/ntia_conformance_checker-5.0.3.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/ntia-conformance-checker@5.0.3
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: Apache-2.0
+ licenseDeclared: Apache-2.0
+ name: ntia-conformance-checker
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 5.0.3
+- SPDXID: SPDXRef-packageurl-python
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 1252ce3a102372ca6f86eb968e16f9014c4ba511c5c37d95a7f023e2ca6e5c25
+ - algorithm: MD5
+ checksumValue: 17b4e2291bacd545758f1c466f3db7b3
+ copyrightText: 'Copyright (c) the purl authors
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/f5/d6/3b5a4e3cfaef7a53869a26ceb034d1ff5e5c27c814ce77260a96d50ab7bb/packageurl_python-0.17.6.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/packageurl-python@0.17.6
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: packageurl-python
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.17.6
+- SPDXID: SPDXRef-ply
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3
+ - algorithm: MD5
+ checksumValue: 6465f602e656455affcd7c5734c638f8
+ copyrightText: 'Copyright (c) 2001-2018 David M. Beazley (Dabeaz LLC)
+
+ David Beazley (http://www.dabeaz.com) Copyright (c) 2007
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/e5/69/882ee5c9d017149285cab114ebeab373308ef0f874fcdac9beb90e0ac4da/ply-3.11.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/ply@3.11
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: BSD-3-Clause
+ licenseDeclared: BSD-3-Clause
+ name: ply
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: '3.11'
+- SPDXID: SPDXRef-prettytable
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 439217116152244369caf3d9f1caf2f9fe29b03bd79e88d2928c8e718c95d680
+ - algorithm: MD5
+ checksumValue: 74b207a4799266653b11a5530f1d5a77
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/81/74/ba08d81e668ccfe8658d7520a307e63c19862c08eb4ccb26f356c5239a7a/prettytable-3.18.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/prettytable@3.18.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: BSD-3-Clause
+ licenseDeclared: BSD-3-Clause
+ name: prettytable
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 3.18.0
+- SPDXID: SPDXRef-pyparsing
+ checksums:
+ - algorithm: SHA256
+ checksumValue: c777f4d763f140633dcb6d8a3eda953bf7a214dc4eff598413c070bcdc117cbc
+ - algorithm: MD5
+ checksumValue: ca3bea68cd1a84584b68cd7bed679464
+ copyrightText: 'Copyright 2004, Paul McGuire
+
+ Copyright 2006, Paul McGuire
+
+ Copyright 2008 Chris Lambrou
+
+ Copyright 2008, Paul McGuire
+
+ Copyright 2010, Paul McGuire
+
+ Copyright 2011, Paul McGuire
+
+ Copyright 2015, Paul McGuire
+
+ Copyright 2016, Paul McGuire
+
+ Copyright 2018, Paul McGuire
+
+ Copyright 2019, Paul McGuire
+
+ Copyright 2020, Paul McGuire
+
+ Copyright 2021, Paul McGuire
+
+ Copyright 2023, Paul McGuire
+
+ Copyright 2024, Paul McGuire
+
+ Copyright Paul McGuire, 2019
+
+ Copyright Paul McGuire, 2021
+
+ copyright 2006, Paul McGuire
+
+ Copyright, 2010, Paul McGuire
+
+ Copyright, 2007 - Paul McGuire
+
+ Copyright, 2012 - Paul McGuire
+
+ Copyright 2006, by Paul McGuire
+
+ Copyright 2008, by Paul McGuire
+
+ Copyright 2012, Paul T. McGuire
+
+ Copyright 2022, by Paul McGuire
+
+ Copyright 2024, by Paul McGuire
+
+ Copyright (c) 2003, Paul McGuire
+
+ Copyright (c) 2004, Paul McGuire
+
+ Copyright (c) 2006, Paul McGuire
+
+ Copyright (c) 2016, Paul McGuire
+
+ Copyright (c) 2024, Paul McGuire
+
+ Copyright 2010,2019 Paul McGuire
+
+ Copyright, 2006, by Paul McGuire
+
+ Copyright 2002-2021, Paul McGuire
+
+ Copyright 2005-2006, Paul McGuire
+
+ Copyright 2009, 2011 Paul McGuire
+
+ Copyright (c) 2018 Paul T. McGuire
+
+ Copyright Ellis & Grant, Inc. 2005
+
+ Copyright 2003-2019 by Paul McGuire
+
+ Copyright 2011,2015 Paul T. McGuire
+
+ Copyright (c) 2003,2019 Paul McGuire
+
+ Copyright (c) 2003-2024 Paul McGuire
+
+ Copyright (c) 2003-2025 Paul McGuire
+
+ Copyright (c) 2006,2016 Paul McGuire
+
+ Copyright 2003, 2019 by Paul McGuire
+
+ Copyright 2004-2016, by Paul McGuire
+
+ Copyright 2007, 2023 by Paul McGuire
+
+ Copyright 2007-2011, by Paul McGuire
+
+ Copyright 2010, 2019 by Paul McGuire
+
+ Copyright 2012, 2019 Paul T. McGuire
+
+ copyright 2018-2024, Paul T. McGuire
+
+ Copyright (c) 2003,2016, Paul McGuire
+
+ Copyright (c) 2004, 2006 Paul McGuire
+
+ Copyright (c) 2004-2016, Paul McGuire
+
+ Copyright (c) 2006, 2019, Paul McGuire
+
+ Copyright (c) 2003-2022 Paul T. McGuire
+
+ Copyright (c) 2004-2011 Paul T. McGuire
+
+ Copyright (c) 2006, 2016, 2023, Paul McGuire
+
+ Copyright (c) 2006, Estrate, the Netherlands
+
+ Copyright 1989 by Carnegie Mellon University
+
+ Copyright 2004-2010, by Paul McGuire September, 2010
+
+ Copyright Petri Savolainen
+
+ Copyright 2004, by Alberto Santini http://www.albertosantini.it/chess
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/f3/91/9c6ee907786a473bf81c5f53cf703ba0957b23ab84c264080fb5a450416f/pyparsing-3.3.2.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/pyparsing@3.3.2
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: pyparsing
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 3.3.2
+- SPDXID: SPDXRef-python-dateutil
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3
+ - algorithm: MD5
+ checksumValue: 81cb6aad924ef40ebfd3d62eaebe47c6
+ copyrightText: 'copyright 2019, dateutil
+
+ Copyright 2017- dateutil contributors
+
+ Copyright (c) 2015- - dateutil contributors
+
+ Copyright 2017- Paul Ganssle
+
+ Copyright (c) 2015- - Paul Ganssle
+
+ Copyright (c) 2014-2016 - Yaron de Leeuw
+
+ Copyright (c) 2003-2011 - Gustavo Niemeyer
+
+ Copyright (c) 2012-2014 - Tomi Pievilainen
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/python-dateutil@2.9.0.post0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: Apache-2.0 AND LicenseRef-unknown-License-OSI-Approved-BSD-License
+ licenseDeclared: Apache-2.0 AND LicenseRef-unknown-License-OSI-Approved-BSD-License
+ name: python-dateutil
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 2.9.0.post0
+- SPDXID: SPDXRef-python-dotenv
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 2c371a91fbd7ba082c2c1dc1f8bf89ca22564a087c2c287cd9b662adde799cf3
+ - algorithm: MD5
+ checksumValue: 74d7de20ea73ed77c5a0c2a5d9c39764
+ copyrightText: 'Copyright (c) 2014, Saurabh Kumar
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/82/ed/0301aeeac3e5353ef3d94b6ec08bbcabd04a72018415dcb29e588514bba8/python_dotenv-1.2.2.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/python-dotenv@1.2.2
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: BSD-3-Clause
+ licenseDeclared: BSD-3-Clause
+ name: python-dotenv
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 1.2.2
+- SPDXID: SPDXRef-pyyaml
+ checksums:
+ - algorithm: SHA256
+ checksumValue: d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f
+ - algorithm: MD5
+ checksumValue: dbc6f815cd75160ccf12e470be1c8d6e
+ copyrightText: 'Copyright (c) 2017-2021 Ingy
+
+ Copyright (c) 2006-2016 Kirill Simonov
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/pyyaml@6.0.3
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: pyyaml
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 6.0.3
+- SPDXID: SPDXRef-rdflib
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 6c831288d5e4a5a7ece85d0ccde9877d512a3d0f02d7c06455d00d6d0ea379df
+ - algorithm: MD5
+ checksumValue: 11bd8e278d1c1e5628ace31a7db904a4
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/98/f5/18bb77b7af9526add0c727a3b2048959847dc5fb030913e2918bf384fec3/rdflib-7.6.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/rdflib@7.6.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: BSD-3-Clause
+ licenseDeclared: BSD-3-Clause
+ name: rdflib
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 7.6.0
+- SPDXID: SPDXRef-requests
+ checksums:
+ - algorithm: SHA256
+ checksumValue: f288924cae4e29463698d6d60bc6a4da69c89185ad1e0bcc4104f584e960b9ed
+ - algorithm: MD5
+ checksumValue: 611e438d0803e962500225f9807a475e
+ copyrightText: 'Copyright Kenneth Reitz
+
+ Copyright 2019 Kenneth Reitz
+
+ copyright (c) 2012 by Kenneth Reitz
+
+ copyright (c) 2017 by Kenneth Reitz
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/ac/c3/e2a2b89f2d3e2179abd6d00ebd70bff6273f37fb3e0cc209f48b39d00cbf/requests-2.34.2.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/requests@2.34.2
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: Apache-2.0
+ licenseDeclared: Apache-2.0
+ name: requests
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 2.34.2
+- SPDXID: SPDXRef-saneyaml
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 19cfbd8bf94d730998162c790fe5cec9abb5300cc5890fe37dc6dbcaa8fb16bb
+ - algorithm: MD5
+ checksumValue: 0ab1ec694c2c004035d1d42c17ac47b0
+ copyrightText: 'Copyright (c) Python
+
+ Copyright (c) nexB Inc.
+
+ copyright of Pete Harlow
+
+ Copyright (c) 1990-2, RSA
+
+ Copyright (c) 1991-2, RSA
+
+ Copyright (c) 2004 Infrae
+
+ Copyright (c) 2009 Gerhard
+
+ Copyright (c) 2013-2017 nexB
+
+ Copyright (c) 2013-2017, Kim
+
+ Copyright (c) Giovanni Bussi
+
+ copyright 1992 by Eric Haines
+
+ copyright nexB Inc. and others
+
+ Copyright (c) 2008-2020 The pip
+
+ Copyright (c) 2009 Gerhard Weis
+
+ Copyright (c) 2013-2017 nexB Inc.
+
+ Copyright (c) 2019 Giovanni Bussi
+
+ Copyright (c) Ian F. Darwin, 1987
+
+ Copyright (c) Python contributors
+
+ Copyright RSA Data Security, Inc.
+
+ copyright RSA Data Security, Inc.
+
+ Copyright (c) nexB Inc. and others.
+
+ Copyright (c) 1996-1997 Cisco Systems
+
+ copyright by the University of Cambridge
+
+ (c) Copyright 1993,1994 by Carnegie Mellon
+
+ Copyright (c) 2008-2020 The pip developers
+
+ Copyright (c) Zeus Technology Limited 1996
+
+ Copyright (c) 1993, 1994 by Carnegie Mellon
+
+ Copyright (c) 1996-1997 Cisco Systems, Inc.
+
+ Copyright (c) 2000-2002 The Apache Software
+
+ Copyright (c) 1994, Jeff Hostetler, Spyglass
+
+ copyright 1992 by Eric Haines, erich@eye.com
+
+ Copyright (c) 1990-2, RSA Data Security, Inc.
+
+ Copyright (c) 1991-2, RSA Data Security, Inc.
+
+ Copyright (c) 2004 Infrae.'', description'' lxml
+
+ Copyright (c) 1991 Bell Communications Research
+
+ Copyright (c) 1997-2001 University of Cambridge
+
+ copyright 2010 David Wolever
+
+ copyright by the University of Cambridge, England
+
+ Copyright (c) 1994, Jeff Hostetler, Spyglass, Inc.
+
+ Copyright (c) 2010 David Wolever
+
+ (c) Copyright 1993,1994 by Carnegie Mellon University
+
+ Copyright (c) 1991 Bell Communications Research, Inc.
+
+ Copyright (c) 1993, 1994 by Carnegie Mellon University
+
+ Copyright (c) 2000-2002 The Apache Software Foundation
+
+ Copyright (c) 2010 David Wolever . All rights reserved.
+
+ Copyright (c) nexB Inc. and others. All rights reserved.
+
+ Copyright 1991 by the Massachusetts Institute of Technology
+
+ Copyright (c) 1995, Board of Trustees of the University of Illinois
+
+ Copyright (c) 2009 Free Software Foundation, Inc.
+
+ Copyright (c) Ian F. Darwin 1986, 1987, 1989, 1990, 1991, 1992, 1994, 1995
+
+ Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark
+
+ Copyright (c) 2013-2017, Kim Davies description Internationalized Domain Names
+
+ Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark
+ Cooper
+
+ copyright Steinar H. Gunderson and Knut Auvor Grythe
+
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/18/bb/b3ab128fe13964fc8da25ecbac82f9ed9beb59b2e04bfbef433886f1acb0/saneyaml-0.6.1.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/saneyaml@0.6.1
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: Apache-2.0
+ licenseDeclared: Apache-2.0
+ name: saneyaml
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.6.1
+- SPDXID: SPDXRef-semantic-version
+ checksums:
+ - algorithm: SHA256
+ checksumValue: bdabb6d336998cbb378d4b9db3a4b56a1e3235701dc05ea2690d9a997ed5041c
+ - algorithm: MD5
+ checksumValue: e48abef93ba69abcd4eaf4640edfc38b
+ copyrightText: 'Copyright (c) The python-semanticversion project
+
+ copyright u''2012-2019, The python-semanticversion project
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/7d/31/f2289ce78b9b473d582568c234e104d2a342fd658cc288a7553d83bb8595/semantic_version-2.10.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/semantic-version@2.10.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: BSD-2-Clause
+ licenseDeclared: BSD-2-Clause
+ name: semantic-version
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 2.10.0
+- SPDXID: SPDXRef-six
+ checksums:
+ - algorithm: SHA256
+ checksumValue: ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81
+ - algorithm: MD5
+ checksumValue: a0387fe15662c71057b4fb2b7aa9056a
+ copyrightText: 'Copyright (c) 2010-2024 Benjamin Peterson
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/six@1.17.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: six
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 1.17.0
+- SPDXID: SPDXRef-soupsieve
+ checksums:
+ - algorithm: SHA256
+ checksumValue: e121fd02e975c695e4e9e8774a5ee35d74714b59307868dcc5319ad2d9e3328e
+ - algorithm: MD5
+ checksumValue: 6afa60ca1795634136ee3ce3a24fb7cc
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/47/2c/0a5f6f8ee0d5589e48c7640213ed5175d52cf540a06725b628cc1a45d6ce/soupsieve-2.8.4.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/soupsieve@2.8.4
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: soupsieve
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 2.8.4
+- SPDXID: SPDXRef-spdx-python-model
+ checksums:
+ - algorithm: SHA256
+ checksumValue: bdec725398babcbdd4bcb7c16cf23497d06a48d0ef3ea1edb19a3b0d431ab8c1
+ - algorithm: MD5
+ checksumValue: 07960215af05ac5e1e6422705ce0e32d
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/68/11/43a4a60f929d41a3e681763728bbba6acf5f3997e68c355551b740d1a9c9/spdx_python_model-0.0.4.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/spdx-python-model@0.0.4
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: Apache-2.0
+ licenseDeclared: Apache-2.0
+ name: spdx-python-model
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.0.4
+- SPDXID: SPDXRef-spdx-tools
+ checksums:
+ - algorithm: SHA256
+ checksumValue: be600beb2f762f0116025e05490d399e724f668bef84025a7c421bb266688bdb
+ - algorithm: MD5
+ checksumValue: 1f57f1eb5bdbc42d3de855d3f2701dfe
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/2f/99/33383f587b59cbd191cc1c0fd5408e550b9275e0090d32561cbddc973fdc/spdx_tools-0.8.5.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/spdx-tools@0.8.5
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: Apache-2.0
+ licenseDeclared: Apache-2.0
+ name: spdx-tools
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.8.5
+- SPDXID: SPDXRef-text-unidecode
+ checksums:
+ - algorithm: SHA256
+ checksumValue: bad6603bb14d279193107714b288be206cac565dfa49aa5b105294dd5c4aab93
+ - algorithm: MD5
+ checksumValue: 53a0a6c5aef8f5eb5834e78e0fdf0499
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/ab/e2/e9a00f0ccb71718418230718b3d900e71a5d16e701a3dae079a21e9cd8f8/text-unidecode-1.3.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/text-unidecode@1.3
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: GPL-2.0-or-later AND LicenseRef-unknown-License-OSI-Approved-Artistic-License
+ AND LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL
+ licenseDeclared: GPL-2.0-or-later AND LicenseRef-unknown-License-OSI-Approved-Artistic-License
+ AND LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL
+ name: text-unidecode
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: '1.3'
+- SPDXID: SPDXRef-typing-extensions
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466
+ - algorithm: MD5
+ checksumValue: 079e529d0b271647f3ec2720aee8fc65
+ copyrightText: 'Copyright (c) 1995-2001 Corporation for National Research Initiatives
+
+ Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, The Netherlands
+
+ Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
+ 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python
+ Software Foundation
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/typing-extensions@4.15.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: PSF-2.0
+ licenseDeclared: PSF-2.0
+ name: typing-extensions
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 4.15.0
+- SPDXID: SPDXRef-uritools
+ checksums:
+ - algorithm: SHA256
+ checksumValue: fa60028843a8be651699a1ee2b399066eeaef349224b32a177efa4aeba463f00
+ - algorithm: MD5
+ checksumValue: ac0c714d0f00d2bb5e8145e51b3650c8
+ copyrightText: NOASSERTION
+ downloadLocation: https://files.pythonhosted.org/packages/d7/75/b1f0e26e0c080c2febdd3a98a752c9fbcf078778f60fe90ea489dc8226ed/uritools-6.1.2.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/uritools@6.1.2
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: uritools
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 6.1.2
+- SPDXID: SPDXRef-urllib3
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c
+ - algorithm: MD5
+ checksumValue: e79707b798a66c8165c9c441440f4e80
+ copyrightText: 'Copyright 2019-2022, Pyodide contributors
+
+ 2019-2022 Pyodide contributors and Mozilla
+
+ Copyright (c) 2019-2022, Pyodide contributors
+
+ Copyright (c) 2008-2020 Andrey Petrov and contributors
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/53/0c/06f8b233b8fd13b9e5ee11424ef85419ba0d8ba0b3138bf360be2ff56953/urllib3-2.7.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/urllib3@2.7.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: urllib3
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 2.7.0
+- SPDXID: SPDXRef-validators
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 992d6c48a4e77c81f1b4daba10d16c3a9bb0dbb79b3a19ea847ff0928e70497a
+ - algorithm: MD5
+ checksumValue: 8376f37ec2028053cee8f4789dadd947
+ copyrightText: 'COPYRIGHT 2013 - 2025, Konsta Vesterinen
+
+ Copyright (c) 2013 - 2025 Konsta Vesterinen
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/53/66/a435d9ae49850b2f071f7ebd8119dd4e84872b01630d6736761e6e7fd847/validators-0.35.0.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/validators@0.35.0
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: validators
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.35.0
+- SPDXID: SPDXRef-wcwidth
+ checksums:
+ - algorithm: SHA256
+ checksumValue: faf5b4a5366a72dc49cad48cdf21f52bdf63bdda995178e483ba247ff79089b9
+ - algorithm: MD5
+ checksumValue: 7bd48380fd85a92d77b2dbb9d412ad99
+ copyrightText: '(c) 2025 Unicode(r), Inc.
+
+ (c) E0.6 copyright 00AE FE0F
+
+ Copyright (c) 2014 Jeff Quast
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/49/b4/51fe890511f0f242d07cb1ebe6a5b6db417262b9d2568b460347c57d95cc/wcwidth-0.8.1.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/wcwidth@0.8.1
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: wcwidth
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.8.1
+- SPDXID: SPDXRef-webencodings
+ checksums:
+ - algorithm: SHA256
+ checksumValue: b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923
+ - algorithm: MD5
+ checksumValue: 32f6e261d52e57bf7e1c4d41546d15b8
+ copyrightText: 'Copyright 2012 by Simon Sapin
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/webencodings@0.5.1
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: LicenseRef-unknown-License-OSI-Approved-BSD-License
+ licenseDeclared: LicenseRef-unknown-License-OSI-Approved-BSD-License
+ name: webencodings
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 0.5.1
+- SPDXID: SPDXRef-xmltodict
+ checksums:
+ - algorithm: SHA256
+ checksumValue: 6d94c9f834dd9e44514162799d344d815a3a4faec913717a9ecbfa5be1bb8e61
+ - algorithm: MD5
+ checksumValue: f0a83032fc31c918a8cd9e60cdb46cb1
+ copyrightText: 'Copyright (c) 2012 Martin Blech and individual contributors
+
+ '
+ downloadLocation: https://files.pythonhosted.org/packages/19/70/80f3b7c10d2630aa66414bf23d210386700aa390547278c789afa994fd7e/xmltodict-1.0.4.tar.gz
+ externalRefs:
+ - referenceCategory: PACKAGE_MANAGER
+ referenceLocator: pkg:pypi/xmltodict@1.0.4
+ referenceType: purl
+ filesAnalyzed: false
+ licenseConcluded: MIT
+ licenseDeclared: MIT
+ name: xmltodict
+ supplier: 'Organization: https://pypi.org'
+ versionInfo: 1.0.4
+relationships:
+- relatedSpdxElement: SPDXRef-openchain-telco-sbom-validator
+ relationshipType: DESCRIBES
+ spdxElementId: SPDXRef-DOCUMENT
+- relatedSpdxElement: SPDXRef-attrs
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-beartype
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-beautifulsoup4
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-boolean-py
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-certifi
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-chardet
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-charset-normalizer
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-click
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-commoncode
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-fetchcode
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-fusepy
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-html5lib
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-htmllistparse
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-idna
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-license-expression
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-ntia-conformance-checker
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-packageurl-python
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-ply
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-prettytable
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-pyparsing
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-python-dateutil
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-python-dotenv
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-pyyaml
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-rdflib
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-requests
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-saneyaml
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-semantic-version
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-six
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-soupsieve
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-spdx-python-model
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-spdx-tools
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-text-unidecode
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-typing-extensions
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-uritools
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-urllib3
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-validators
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-wcwidth
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-webencodings
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+- relatedSpdxElement: SPDXRef-xmltodict
+ relationshipType: CONTAINS
+ spdxElementId: SPDXRef-openchain-telco-sbom-validator
+spdxVersion: SPDX-2.3
diff --git a/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx3.json b/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx3.json
new file mode 100644
index 0000000..6c03109
--- /dev/null
+++ b/tools/openchain_telco_sbom_validator/open-source-compliance-artifacts/openchain-telco-sbom-validator-0.3.5.spdx3.json
@@ -0,0 +1,2490 @@
+{
+ "@context": "https://spdx.org/rdf/3.0.1/spdx-context.jsonld",
+ "@graph": [
+ {
+ "@id": "_:creationInfo",
+ "type": "CreationInfo",
+ "specVersion": "3.0.1",
+ "createdBy": [
+ "https://spdx.org/spdxdocs/Nokia"
+ ],
+ "createdUsing": [
+ "https://pypi.org/spdxdocs/pypispdx"
+ ],
+ "created": "2026-06-24T15:16:33Z",
+ "comment": "This SBOM was created with Python version 3.14.6"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/spdxdocument",
+ "type": "SpdxDocument",
+ "name": "spdxdocument",
+ "dataLicense": "https://spdx.org/spdxdocs/CC0-1.0",
+ "rootElement": [
+ "https://spdx.org/spdxdocs/software_Sbom"
+ ],
+ "profileConformance": [
+ "core",
+ "software",
+ "simpleLicensing"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/software_Sbom",
+ "type": "software_Sbom",
+ "name": "openchain-telco-sbom-validator-0.3.5",
+ "rootElement": [
+ "https://spdx.org/spdxdocs/openchain-telco-sbom-validator"
+ ],
+ "software_sbomType": [
+ "analyzed"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/spdxdocs/pypispdx",
+ "type": "Tool",
+ "name": "pypispdx - 0.3.1",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/Nokia",
+ "type": "Organization",
+ "name": "Nokia",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/pypi",
+ "type": "Organization",
+ "name": "pypi.org",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "type": "software_Package",
+ "name": "openchain-telco-sbom-validator",
+ "software_packageVersion": "0.3.5",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/openchain-telco-sbom-validator@0.3.5",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/0d/db/8a3663d33288a5efdeb6cc57cfb9d5be39cb659d41dd753636afa44679a2/openchain_telco_sbom_validator-0.3.5.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "a722d07a6f0aa2bb3aaba788f4494973d2b529a0b2e4662723261ae302c64161"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "3604ac3d65b6cda762a4f35eb8cd0c3c"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-openchain-telco-sbom-validator",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "Apache-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-openchain-telco-sbom-validator",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-openchain-telco-sbom-validator"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-openchain-telco-sbom-validator",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-openchain-telco-sbom-validator"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/attrs",
+ "type": "software_Package",
+ "name": "attrs",
+ "software_packageVersion": "26.1.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/attrs@26.1.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/9a/8e/82a0fe20a541c03148528be8cac2408564a6c9a0cc7e9171802bc1d26985/attrs-26.1.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "d03ceb89cb322a8fd706d4fb91940737b6642aa36998fe130a9bc96c985eff32"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "633953d1aa39cfa76c733a20fdd9c196"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "(c) N Revealed\nCopyright (c) 2015 Hynek Schlawack\nCopyright ...\" is shown in the HTML footer. Default is True.\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-attrs",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-attrs",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/attrs",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-attrs"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-attrs",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/attrs",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-attrs"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/beartype",
+ "type": "software_Package",
+ "name": "beartype",
+ "software_packageVersion": "0.22.9",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/beartype@0.22.9",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/c7/94/1009e248bbfbab11397abca7193bea6626806be9a327d399810d523a07cb/beartype-0.22.9.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "8f82b54aa723a2848a56008d18875f91c1db02c32ef6a62319a002e3e25a975f"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "da867f7418a7e35ae5b8495b505000f0"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "copyright 2021, @leycec\nCopyright (c) 2014-2025 Beartype\nCOPYRIGHT 2014-2025 Beartype authors\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-beartype",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-beartype",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/beartype",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-beartype"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-beartype",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/beartype",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-beartype"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/beautifulsoup4",
+ "type": "software_Package",
+ "name": "beautifulsoup4",
+ "software_packageVersion": "4.15.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/beautifulsoup4@4.15.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/43/65/318323f98dbee45d42dff61d8f047181bc6f2268a9068cfad035a46be5af/beautifulsoup4-4.15.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "288e3ca7d54b06f2ac191970bc275c1939cb46d450b255bf6718b04aa37ab4f7"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "a9d04db2259b78ec23fcdfddfed5bcb8"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-beautifulsoup4",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-beautifulsoup4",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/beautifulsoup4",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-beautifulsoup4"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-beautifulsoup4",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/beautifulsoup4",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-beautifulsoup4"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/boolean-py",
+ "type": "software_Package",
+ "name": "boolean-py",
+ "software_packageVersion": "5.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/boolean-py@5.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/c4/cf/85379f13b76f3a69bca86b60237978af17d6aa0bc5998978c3b8cf05abb2/boolean_py-5.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "60cbc4bad079753721d32649545505362c754e121570ada4658b852a3a318d95"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "1a7ec75805094c91980b9f11240853c0"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "copyright 2009, Sebastian Kramer\nCopyright (c) 2009, 2010, 2013-2016 by the Brotli Authors\nCopyright (c) Sebastian Kraemer, basti.kr@gmail.com and others\nCopyright (c) 2009-2020 Sebastian Kraemer, basti.kr@gmail.com and others\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-boolean-py",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "BSD-2-Clause",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-boolean-py",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/boolean-py",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-boolean-py"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-boolean-py",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/boolean-py",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-boolean-py"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/certifi",
+ "type": "software_Package",
+ "name": "certifi",
+ "software_packageVersion": "2026.6.17",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/certifi@2026.6.17",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/c9/c7/424b75da314c1045981bd9777432fad05a9e0c69daa4ed7e308bbaffe405/certifi-2026.6.17.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "024c88eeec92ca068db80f02b8b07c9cef7b9fe261d1d535abfd5abd6f6af432"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "1af47cd1635599db1f2e598ae6c4d751"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-certifi",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MPL-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-certifi",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/certifi",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-certifi"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-certifi",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/certifi",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-certifi"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/chardet",
+ "type": "software_Package",
+ "name": "chardet",
+ "software_packageVersion": "7.4.3",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/chardet@7.4.3",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/19/b6/9df434a8eeba2e6628c465a1dfa31034228ef79b26f76f46278f4ef7e49d/chardet-7.4.3.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "cc1d4eb92a4ec1c2df3b490836ffa46922e599d34ce0bb75cf41fd2bf6303d56"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "df96bc7067630990c971ea95001f5687"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) 2026 Dan Blanchard\ncopyright 2026, chardet contributors\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-chardet",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "0BSD",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-chardet",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/chardet",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-chardet"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-chardet",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/chardet",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-chardet"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/charset-normalizer",
+ "type": "software_Package",
+ "name": "charset-normalizer",
+ "software_packageVersion": "3.4.7",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/charset-normalizer@3.4.7",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/e7/a1/67fe25fac3c7642725500a3f6cfe5821ad557c3abb11c9d20d12c7008d3e/charset_normalizer-3.4.7.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "ae89db9e5f98a11a4bf50407d4363e7b09b31e55bc117b4f7d80aab97ba009e5"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "68805886064d248d2e5205fd11112d85"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "COPYRIGHT (c) FOOBAR\ncopyright 2023, Ahmed TAHRI\nCopyright (c) 2025 Ahmed TAHRI\nCopyright (c) 2025 TAHRI Ahmed R.\ncopyright (c) 2021 by Ahmed TAHRI\n(c) 2012 Denny Vrandecic (http://simia.net/letters/)\nCopyright (c) Ahmed TAHRI @Ousret (https://github.com/Ousret)\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-charset-normalizer",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-charset-normalizer",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/charset-normalizer",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-charset-normalizer"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-charset-normalizer",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/charset-normalizer",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-charset-normalizer"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/click",
+ "type": "software_Package",
+ "name": "click",
+ "software_packageVersion": "8.4.1",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/click@8.4.1",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/9b/98/518d8e5081007684232226f475082b30087d0f585e8457db087298259f49/click-8.4.1.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "918b5633eddf6b41c32d4f454bf0de810065c74e3f7dbf8ee5452f8be88d3e96"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "28bc070cf89b06d88bf74b2d3c4debc7"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright 2014 Pallets\ncopyright 2014 Pallets\nCopyright 2001-2006 Gregory P. Ward\nCopyright 2002-2006 Python Software Foundation\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-click",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "BSD-3-Clause",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-click",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/click",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-click"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-click",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/click",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-click"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/commoncode",
+ "type": "software_Package",
+ "name": "commoncode",
+ "software_packageVersion": "32.5.2",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/commoncode@32.5.2",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/8e/69/50e2f0cac532d373c15b5d41bc9d948cf273b6a6dcf24649e6fbccb82e59/commoncode-32.5.2.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "2964ca058cf93f2917048ee3ff03907cf65f8f2034de09992b52063801a91790"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "9678f3e0fe2193b4e6bf0b3862c1f7e3"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-commoncode",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "NOASSERTION",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-commoncode",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/commoncode",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-commoncode"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-commoncode",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/commoncode",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-commoncode"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/fetchcode",
+ "type": "software_Package",
+ "name": "fetchcode",
+ "software_packageVersion": "0.8.2",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/fetchcode@0.8.2",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/6e/e2/e8855b0665685cd43ad2da8912ba4c1f8fd77739ce2da451dbb5b89411cd/fetchcode-0.8.2.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "53ff257905235fb264fe7c151c1eb37c35112dd41464ab1f346e9a5caf0f01c8"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "1b23a010b0706e43ffe0d676eceb176c"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-fetchcode",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "Apache-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-fetchcode",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/fetchcode",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-fetchcode"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-fetchcode",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/fetchcode",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-fetchcode"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/fusepy",
+ "type": "software_Package",
+ "name": "fusepy",
+ "software_packageVersion": "3.0.1",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/fusepy@3.0.1",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/04/0b/4506cb2e831cea4b0214d3625430e921faaa05a7fb520458c75a2dbd2152/fusepy-3.0.1.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "72ff783ec2f43de3ab394e3f7457605bf04c8cf288a2f4068b4cde141d4ee6bd"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "d383a3c6742755039ba51b6f3f919d5f"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) 2012 Terence Honles \nCopyright (c) 2008 Giorgos Verigakis \n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-fusepy",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "ISC",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-fusepy",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/fusepy",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-fusepy"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-fusepy",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/fusepy",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-fusepy"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/html5lib",
+ "type": "software_Package",
+ "name": "html5lib",
+ "software_packageVersion": "1.1",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/html5lib@1.1",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/ac/b6/b55c3f49042f1df3dcd422b7f224f939892ee94f22abcf503a9b7339eaf2/html5lib-1.1.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "b2e5b40261e20f354d198eae92afc10d750afb487ed5e50f9c4eaf07c184146f"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "6748742e2ec4cb99287a6bc82bcfe2b0"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "(c) OY H-aaoY\nCopyright (c) 2006-2013 James Graham and other contributors\nCopyright (c) 2006-2013 James Graham, Geoffrey Sneddon, and other contributors\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-html5lib",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-html5lib",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/html5lib",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-html5lib"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-html5lib",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/html5lib",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-html5lib"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/htmllistparse",
+ "type": "software_Package",
+ "name": "htmllistparse",
+ "software_packageVersion": "0.6.1",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/htmllistparse@0.6.1",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/47/4f/6c57a2817e4f20c1ed8dcca24ee036f981ed036f4b36d07a0100303db96a/htmllistparse-0.6.1.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "6dc8a6bf03c843b9d325843a26a2351a795b573cd92a2c9b8271621019c64082"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "3e8ffe2e64318ad9c3875bf0678bc724"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) 2016-2017 Dingyuan Wang\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-htmllistparse",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-htmllistparse",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/htmllistparse",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-htmllistparse"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-htmllistparse",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/htmllistparse",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-htmllistparse"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/idna",
+ "type": "software_Package",
+ "name": "idna",
+ "software_packageVersion": "3.18",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/idna@3.18",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/cd/63/9496c57188a2ee585e0f1db071d75089a11e98aa86eb99d9d7618fc1edce/idna-3.18.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "ffb385a7e039654cef1ab9ef32c6fafe283c0c0467bba1d9029738ce4a14a848"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "64359467ec86d86e398b1ae614e5718c"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-idna",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "BSD-3-Clause",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-idna",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/idna",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-idna"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-idna",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/idna",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-idna"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/license-expression",
+ "type": "software_Package",
+ "name": "license-expression",
+ "software_packageVersion": "30.4.4",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/license-expression@30.4.4",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/40/71/d89bb0e71b1415453980fd32315f2a037aad9f7f70f695c7cec7035feb13/license_expression-30.4.4.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "73448f0aacd8d0808895bdc4b2c8e01a8d67646e4188f887375398c761f340fd"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "933c9e708aba564bec664357771709d7"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) nexB Inc.\nCopyright (c) Giovanni Bussi\nCopyright (c) 2019 Giovanni Bussi\nCopyright (c) nexB Inc. and others.\ncopyright nexB Inc., AboutCode and others\nCopyright (c) 2008-2020 The pip developers\nCopyright (c) nexB Inc. AboutCode, and others\ncopyright 2010 David Wolever \nCopyright (c) 2010 David Wolever \nCopyright (c) 2010 David Wolever . All rights reserved.\nCopyright (c) nexB Inc. and others. All rights reserved.\nCopyright (c) nexB Inc. AboutCode, and others. All rights reserved.\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-license-expression",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "Apache-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-license-expression",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/license-expression",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-license-expression"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-license-expression",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/license-expression",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-license-expression"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/ntia-conformance-checker",
+ "type": "software_Package",
+ "name": "ntia-conformance-checker",
+ "software_packageVersion": "5.0.3",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/ntia-conformance-checker@5.0.3",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/91/35/3f10225852dffe0b9cf368cc63d13c5600ca4102e23d02eca9aa961e53ea/ntia_conformance_checker-5.0.3.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "af4262a06560fcdaf05025522907977977c904538d4697fc44bc72bc29a853f2"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "4c445d1df5e2b00d70d62e20f3d6151e"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-ntia-conformance-checker",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "Apache-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-ntia-conformance-checker",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/ntia-conformance-checker",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-ntia-conformance-checker"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-ntia-conformance-checker",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/ntia-conformance-checker",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-ntia-conformance-checker"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/packageurl-python",
+ "type": "software_Package",
+ "name": "packageurl-python",
+ "software_packageVersion": "0.17.6",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/packageurl-python@0.17.6",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/f5/d6/3b5a4e3cfaef7a53869a26ceb034d1ff5e5c27c814ce77260a96d50ab7bb/packageurl_python-0.17.6.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "1252ce3a102372ca6f86eb968e16f9014c4ba511c5c37d95a7f023e2ca6e5c25"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "17b4e2291bacd545758f1c466f3db7b3"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) the purl authors\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-packageurl-python",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-packageurl-python",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/packageurl-python",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-packageurl-python"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-packageurl-python",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/packageurl-python",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-packageurl-python"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/ply",
+ "type": "software_Package",
+ "name": "ply",
+ "software_packageVersion": "3.11",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/ply@3.11",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/e5/69/882ee5c9d017149285cab114ebeab373308ef0f874fcdac9beb90e0ac4da/ply-3.11.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "6465f602e656455affcd7c5734c638f8"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) 2001-2018 David M. Beazley (Dabeaz LLC)\nDavid Beazley (http://www.dabeaz.com) Copyright (c) 2007\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-ply",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "BSD-3-Clause",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-ply",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/ply",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-ply"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-ply",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/ply",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-ply"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/prettytable",
+ "type": "software_Package",
+ "name": "prettytable",
+ "software_packageVersion": "3.18.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/prettytable@3.18.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/81/74/ba08d81e668ccfe8658d7520a307e63c19862c08eb4ccb26f356c5239a7a/prettytable-3.18.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "439217116152244369caf3d9f1caf2f9fe29b03bd79e88d2928c8e718c95d680"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "74b207a4799266653b11a5530f1d5a77"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-prettytable",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "BSD-3-Clause",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-prettytable",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/prettytable",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-prettytable"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-prettytable",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/prettytable",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-prettytable"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/pyparsing",
+ "type": "software_Package",
+ "name": "pyparsing",
+ "software_packageVersion": "3.3.2",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/pyparsing@3.3.2",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/f3/91/9c6ee907786a473bf81c5f53cf703ba0957b23ab84c264080fb5a450416f/pyparsing-3.3.2.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "c777f4d763f140633dcb6d8a3eda953bf7a214dc4eff598413c070bcdc117cbc"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "ca3bea68cd1a84584b68cd7bed679464"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright 2004, Paul McGuire\nCopyright 2006, Paul McGuire\nCopyright 2008 Chris Lambrou\nCopyright 2008, Paul McGuire\nCopyright 2010, Paul McGuire\nCopyright 2011, Paul McGuire\nCopyright 2015, Paul McGuire\nCopyright 2016, Paul McGuire\nCopyright 2018, Paul McGuire\nCopyright 2019, Paul McGuire\nCopyright 2020, Paul McGuire\nCopyright 2021, Paul McGuire\nCopyright 2023, Paul McGuire\nCopyright 2024, Paul McGuire\nCopyright Paul McGuire, 2019\nCopyright Paul McGuire, 2021\ncopyright 2006, Paul McGuire\nCopyright, 2010, Paul McGuire\nCopyright, 2007 - Paul McGuire\nCopyright, 2012 - Paul McGuire\nCopyright 2006, by Paul McGuire\nCopyright 2008, by Paul McGuire\nCopyright 2012, Paul T. McGuire\nCopyright 2022, by Paul McGuire\nCopyright 2024, by Paul McGuire\nCopyright (c) 2003, Paul McGuire\nCopyright (c) 2004, Paul McGuire\nCopyright (c) 2006, Paul McGuire\nCopyright (c) 2016, Paul McGuire\nCopyright (c) 2024, Paul McGuire\nCopyright 2010,2019 Paul McGuire\nCopyright, 2006, by Paul McGuire\nCopyright 2002-2021, Paul McGuire\nCopyright 2005-2006, Paul McGuire\nCopyright 2009, 2011 Paul McGuire\nCopyright (c) 2018 Paul T. McGuire\nCopyright Ellis & Grant, Inc. 2005\nCopyright 2003-2019 by Paul McGuire\nCopyright 2011,2015 Paul T. McGuire\nCopyright (c) 2003,2019 Paul McGuire\nCopyright (c) 2003-2024 Paul McGuire\nCopyright (c) 2003-2025 Paul McGuire\nCopyright (c) 2006,2016 Paul McGuire\nCopyright 2003, 2019 by Paul McGuire\nCopyright 2004-2016, by Paul McGuire\nCopyright 2007, 2023 by Paul McGuire\nCopyright 2007-2011, by Paul McGuire\nCopyright 2010, 2019 by Paul McGuire\nCopyright 2012, 2019 Paul T. McGuire\ncopyright 2018-2024, Paul T. McGuire\nCopyright (c) 2003,2016, Paul McGuire\nCopyright (c) 2004, 2006 Paul McGuire\nCopyright (c) 2004-2016, Paul McGuire\nCopyright (c) 2006, 2019, Paul McGuire\nCopyright (c) 2003-2022 Paul T. McGuire\nCopyright (c) 2004-2011 Paul T. McGuire\nCopyright (c) 2006, 2016, 2023, Paul McGuire\nCopyright (c) 2006, Estrate, the Netherlands\nCopyright 1989 by Carnegie Mellon University\nCopyright 2004-2010, by Paul McGuire September, 2010\nCopyright Petri Savolainen \nCopyright 2004, by Alberto Santini http://www.albertosantini.it/chess\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-pyparsing",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-pyparsing",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/pyparsing",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-pyparsing"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-pyparsing",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/pyparsing",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-pyparsing"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/python-dateutil",
+ "type": "software_Package",
+ "name": "python-dateutil",
+ "software_packageVersion": "2.9.0.post0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/python-dateutil@2.9.0.post0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "81cb6aad924ef40ebfd3d62eaebe47c6"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "copyright 2019, dateutil\nCopyright 2017- dateutil contributors\nCopyright (c) 2015- - dateutil contributors\nCopyright 2017- Paul Ganssle \nCopyright (c) 2015- - Paul Ganssle \nCopyright (c) 2014-2016 - Yaron de Leeuw \nCopyright (c) 2003-2011 - Gustavo Niemeyer \nCopyright (c) 2012-2014 - Tomi Pievilainen \n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-python-dateutil",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "Apache-2.0 AND LicenseRef-unknown-License-OSI-Approved-BSD-License",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-python-dateutil",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/python-dateutil",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-python-dateutil"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-python-dateutil",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/python-dateutil",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-python-dateutil"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/python-dotenv",
+ "type": "software_Package",
+ "name": "python-dotenv",
+ "software_packageVersion": "1.2.2",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/python-dotenv@1.2.2",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/82/ed/0301aeeac3e5353ef3d94b6ec08bbcabd04a72018415dcb29e588514bba8/python_dotenv-1.2.2.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "2c371a91fbd7ba082c2c1dc1f8bf89ca22564a087c2c287cd9b662adde799cf3"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "74d7de20ea73ed77c5a0c2a5d9c39764"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) 2014, Saurabh Kumar\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-python-dotenv",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "BSD-3-Clause",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-python-dotenv",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/python-dotenv",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-python-dotenv"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-python-dotenv",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/python-dotenv",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-python-dotenv"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/pyyaml",
+ "type": "software_Package",
+ "name": "pyyaml",
+ "software_packageVersion": "6.0.3",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/pyyaml@6.0.3",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "dbc6f815cd75160ccf12e470be1c8d6e"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) 2017-2021 Ingy\nCopyright (c) 2006-2016 Kirill Simonov\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-pyyaml",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-pyyaml",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/pyyaml",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-pyyaml"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-pyyaml",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/pyyaml",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-pyyaml"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/rdflib",
+ "type": "software_Package",
+ "name": "rdflib",
+ "software_packageVersion": "7.6.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/rdflib@7.6.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/98/f5/18bb77b7af9526add0c727a3b2048959847dc5fb030913e2918bf384fec3/rdflib-7.6.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "6c831288d5e4a5a7ece85d0ccde9877d512a3d0f02d7c06455d00d6d0ea379df"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "11bd8e278d1c1e5628ace31a7db904a4"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-rdflib",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "BSD-3-Clause",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-rdflib",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/rdflib",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-rdflib"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-rdflib",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/rdflib",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-rdflib"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/requests",
+ "type": "software_Package",
+ "name": "requests",
+ "software_packageVersion": "2.34.2",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/requests@2.34.2",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/ac/c3/e2a2b89f2d3e2179abd6d00ebd70bff6273f37fb3e0cc209f48b39d00cbf/requests-2.34.2.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "f288924cae4e29463698d6d60bc6a4da69c89185ad1e0bcc4104f584e960b9ed"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "611e438d0803e962500225f9807a475e"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright Kenneth Reitz\nCopyright 2019 Kenneth Reitz\ncopyright (c) 2012 by Kenneth Reitz\ncopyright (c) 2017 by Kenneth Reitz\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-requests",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "Apache-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-requests",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/requests",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-requests"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-requests",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/requests",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-requests"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/saneyaml",
+ "type": "software_Package",
+ "name": "saneyaml",
+ "software_packageVersion": "0.6.1",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/saneyaml@0.6.1",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/18/bb/b3ab128fe13964fc8da25ecbac82f9ed9beb59b2e04bfbef433886f1acb0/saneyaml-0.6.1.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "19cfbd8bf94d730998162c790fe5cec9abb5300cc5890fe37dc6dbcaa8fb16bb"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "0ab1ec694c2c004035d1d42c17ac47b0"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) Python\nCopyright (c) nexB Inc.\ncopyright of Pete Harlow\nCopyright (c) 1990-2, RSA\nCopyright (c) 1991-2, RSA\nCopyright (c) 2004 Infrae\nCopyright (c) 2009 Gerhard\nCopyright (c) 2013-2017 nexB\nCopyright (c) 2013-2017, Kim\nCopyright (c) Giovanni Bussi\ncopyright 1992 by Eric Haines\ncopyright nexB Inc. and others\nCopyright (c) 2008-2020 The pip\nCopyright (c) 2009 Gerhard Weis\nCopyright (c) 2013-2017 nexB Inc.\nCopyright (c) 2019 Giovanni Bussi\nCopyright (c) Ian F. Darwin, 1987\nCopyright (c) Python contributors\nCopyright RSA Data Security, Inc.\ncopyright RSA Data Security, Inc.\nCopyright (c) nexB Inc. and others.\nCopyright (c) 1996-1997 Cisco Systems\ncopyright by the University of Cambridge\n(c) Copyright 1993,1994 by Carnegie Mellon\nCopyright (c) 2008-2020 The pip developers\nCopyright (c) Zeus Technology Limited 1996\nCopyright (c) 1993, 1994 by Carnegie Mellon\nCopyright (c) 1996-1997 Cisco Systems, Inc.\nCopyright (c) 2000-2002 The Apache Software\nCopyright (c) 1994, Jeff Hostetler, Spyglass\ncopyright 1992 by Eric Haines, erich@eye.com\nCopyright (c) 1990-2, RSA Data Security, Inc.\nCopyright (c) 1991-2, RSA Data Security, Inc.\nCopyright (c) 2004 Infrae.', description' lxml\nCopyright (c) 1991 Bell Communications Research\nCopyright (c) 1997-2001 University of Cambridge\ncopyright 2010 David Wolever \ncopyright by the University of Cambridge, England\nCopyright (c) 1994, Jeff Hostetler, Spyglass, Inc.\nCopyright (c) 2010 David Wolever \n(c) Copyright 1993,1994 by Carnegie Mellon University\nCopyright (c) 1991 Bell Communications Research, Inc.\nCopyright (c) 1993, 1994 by Carnegie Mellon University\nCopyright (c) 2000-2002 The Apache Software Foundation\nCopyright (c) 2010 David Wolever . All rights reserved.\nCopyright (c) nexB Inc. and others. All rights reserved.\nCopyright 1991 by the Massachusetts Institute of Technology\nCopyright (c) 1995, Board of Trustees of the University of Illinois\nCopyright (c) 2009 Free Software Foundation, Inc. \nCopyright (c) Ian F. Darwin 1986, 1987, 1989, 1990, 1991, 1992, 1994, 1995\nCopyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark\nCopyright (c) 2013-2017, Kim Davies description Internationalized Domain Names\nCopyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper\ncopyright Steinar H. Gunderson and Knut Auvor Grythe \n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-saneyaml",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "Apache-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-saneyaml",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/saneyaml",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-saneyaml"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-saneyaml",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/saneyaml",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-saneyaml"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/semantic-version",
+ "type": "software_Package",
+ "name": "semantic-version",
+ "software_packageVersion": "2.10.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/semantic-version@2.10.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/7d/31/f2289ce78b9b473d582568c234e104d2a342fd658cc288a7553d83bb8595/semantic_version-2.10.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "bdabb6d336998cbb378d4b9db3a4b56a1e3235701dc05ea2690d9a997ed5041c"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "e48abef93ba69abcd4eaf4640edfc38b"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) The python-semanticversion project\ncopyright u'2012-2019, The python-semanticversion project\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-semantic-version",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "BSD-2-Clause",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-semantic-version",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/semantic-version",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-semantic-version"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-semantic-version",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/semantic-version",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-semantic-version"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/six",
+ "type": "software_Package",
+ "name": "six",
+ "software_packageVersion": "1.17.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/six@1.17.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "a0387fe15662c71057b4fb2b7aa9056a"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) 2010-2024 Benjamin Peterson\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-six",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-six",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/six",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-six"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-six",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/six",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-six"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/soupsieve",
+ "type": "software_Package",
+ "name": "soupsieve",
+ "software_packageVersion": "2.8.4",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/soupsieve@2.8.4",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/47/2c/0a5f6f8ee0d5589e48c7640213ed5175d52cf540a06725b628cc1a45d6ce/soupsieve-2.8.4.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "e121fd02e975c695e4e9e8774a5ee35d74714b59307868dcc5319ad2d9e3328e"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "6afa60ca1795634136ee3ce3a24fb7cc"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-soupsieve",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-soupsieve",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/soupsieve",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-soupsieve"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-soupsieve",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/soupsieve",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-soupsieve"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/spdx-python-model",
+ "type": "software_Package",
+ "name": "spdx-python-model",
+ "software_packageVersion": "0.0.4",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/spdx-python-model@0.0.4",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/68/11/43a4a60f929d41a3e681763728bbba6acf5f3997e68c355551b740d1a9c9/spdx_python_model-0.0.4.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "bdec725398babcbdd4bcb7c16cf23497d06a48d0ef3ea1edb19a3b0d431ab8c1"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "07960215af05ac5e1e6422705ce0e32d"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-spdx-python-model",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "Apache-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-spdx-python-model",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/spdx-python-model",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-spdx-python-model"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-spdx-python-model",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/spdx-python-model",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-spdx-python-model"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/spdx-tools",
+ "type": "software_Package",
+ "name": "spdx-tools",
+ "software_packageVersion": "0.8.5",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/spdx-tools@0.8.5",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/2f/99/33383f587b59cbd191cc1c0fd5408e550b9275e0090d32561cbddc973fdc/spdx_tools-0.8.5.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "be600beb2f762f0116025e05490d399e724f668bef84025a7c421bb266688bdb"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "1f57f1eb5bdbc42d3de855d3f2701dfe"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-spdx-tools",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "Apache-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-spdx-tools",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/spdx-tools",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-spdx-tools"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-spdx-tools",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/spdx-tools",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-spdx-tools"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/text-unidecode",
+ "type": "software_Package",
+ "name": "text-unidecode",
+ "software_packageVersion": "1.3",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/text-unidecode@1.3",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/ab/e2/e9a00f0ccb71718418230718b3d900e71a5d16e701a3dae079a21e9cd8f8/text-unidecode-1.3.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "bad6603bb14d279193107714b288be206cac565dfa49aa5b105294dd5c4aab93"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "53a0a6c5aef8f5eb5834e78e0fdf0499"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-text-unidecode",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "GPL-2.0-or-later AND LicenseRef-unknown-License-OSI-Approved-Artistic-License AND LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-text-unidecode",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/text-unidecode",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-text-unidecode"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-text-unidecode",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/text-unidecode",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-text-unidecode"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/typing-extensions",
+ "type": "software_Package",
+ "name": "typing-extensions",
+ "software_packageVersion": "4.15.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/typing-extensions@4.15.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "079e529d0b271647f3ec2720aee8fc65"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) 1995-2001 Corporation for National Research Initiatives\nCopyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, The Netherlands\nCopyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python Software Foundation\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-typing-extensions",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "PSF-2.0",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-typing-extensions",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/typing-extensions",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-typing-extensions"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-typing-extensions",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/typing-extensions",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-typing-extensions"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/uritools",
+ "type": "software_Package",
+ "name": "uritools",
+ "software_packageVersion": "6.1.2",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/uritools@6.1.2",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/d7/75/b1f0e26e0c080c2febdd3a98a752c9fbcf078778f60fe90ea489dc8226ed/uritools-6.1.2.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "fa60028843a8be651699a1ee2b399066eeaef349224b32a177efa4aeba463f00"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "ac0c714d0f00d2bb5e8145e51b3650c8"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "NOASSERTION"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-uritools",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-uritools",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/uritools",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-uritools"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-uritools",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/uritools",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-uritools"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/urllib3",
+ "type": "software_Package",
+ "name": "urllib3",
+ "software_packageVersion": "2.7.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/urllib3@2.7.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/53/0c/06f8b233b8fd13b9e5ee11424ef85419ba0d8ba0b3138bf360be2ff56953/urllib3-2.7.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "e79707b798a66c8165c9c441440f4e80"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright 2019-2022, Pyodide contributors\n2019-2022 Pyodide contributors and Mozilla\nCopyright (c) 2019-2022, Pyodide contributors\nCopyright (c) 2008-2020 Andrey Petrov and contributors\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-urllib3",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-urllib3",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/urllib3",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-urllib3"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-urllib3",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/urllib3",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-urllib3"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/validators",
+ "type": "software_Package",
+ "name": "validators",
+ "software_packageVersion": "0.35.0",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/validators@0.35.0",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/53/66/a435d9ae49850b2f071f7ebd8119dd4e84872b01630d6736761e6e7fd847/validators-0.35.0.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "992d6c48a4e77c81f1b4daba10d16c3a9bb0dbb79b3a19ea847ff0928e70497a"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "8376f37ec2028053cee8f4789dadd947"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "COPYRIGHT 2013 - 2025, Konsta Vesterinen\nCopyright (c) 2013 - 2025 Konsta Vesterinen\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-validators",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-validators",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/validators",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-validators"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-validators",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/validators",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-validators"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/wcwidth",
+ "type": "software_Package",
+ "name": "wcwidth",
+ "software_packageVersion": "0.8.1",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/wcwidth@0.8.1",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/49/b4/51fe890511f0f242d07cb1ebe6a5b6db417262b9d2568b460347c57d95cc/wcwidth-0.8.1.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "faf5b4a5366a72dc49cad48cdf21f52bdf63bdda995178e483ba247ff79089b9"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "7bd48380fd85a92d77b2dbb9d412ad99"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "(c) 2025 Unicode(r), Inc.\n(c) E0.6 copyright 00AE FE0F\nCopyright (c) 2014 Jeff Quast \n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-wcwidth",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-wcwidth",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/wcwidth",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-wcwidth"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-wcwidth",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/wcwidth",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-wcwidth"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/webencodings",
+ "type": "software_Package",
+ "name": "webencodings",
+ "software_packageVersion": "0.5.1",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/webencodings@0.5.1",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "32f6e261d52e57bf7e1c4d41546d15b8"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright 2012 by Simon Sapin\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-webencodings",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "LicenseRef-unknown-License-OSI-Approved-BSD-License",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-webencodings",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/webencodings",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-webencodings"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-webencodings",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/webencodings",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-webencodings"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/xmltodict",
+ "type": "software_Package",
+ "name": "xmltodict",
+ "software_packageVersion": "1.0.4",
+ "suppliedBy": "https://spdx.org/spdxdocs/pypi",
+ "software_packageUrl": "pkg:pypi/xmltodict@1.0.4",
+ "software_downloadLocation": "https://files.pythonhosted.org/packages/19/70/80f3b7c10d2630aa66414bf23d210386700aa390547278c789afa994fd7e/xmltodict-1.0.4.tar.gz",
+ "verifiedUsing": [
+ {
+ "type": "Hash",
+ "algorithm": "sha256",
+ "hashValue": "6d94c9f834dd9e44514162799d344d815a3a4faec913717a9ecbfa5be1bb8e61"
+ },
+ {
+ "type": "Hash",
+ "algorithm": "md5",
+ "hashValue": "f0a83032fc31c918a8cd9e60cdb46cb1"
+ }
+ ],
+ "creationInfo": "_:creationInfo",
+ "software_copyrightText": "Copyright (c) 2012 Martin Blech and individual contributors\n"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseExpression-xmltodict",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "MIT",
+ "simplelicensing_licenseListVersion": "3.28.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipconcluded-xmltodict",
+ "type": "Relationship",
+ "relationshipType": "hasConcludedLicense",
+ "from": "https://spdx.org/spdxdocs/xmltodict",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-xmltodict"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/relationshipdeclared-xmltodict",
+ "type": "Relationship",
+ "relationshipType": "hasDeclaredLicense",
+ "from": "https://spdx.org/spdxdocs/xmltodict",
+ "to": [
+ "https://spdx.org/spdxdocs/LicenseExpression-xmltodict"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/CC0-1.0",
+ "type": "simplelicensing_LicenseExpression",
+ "simplelicensing_licenseExpression": "CC0-1.0",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/describes",
+ "type": "Relationship",
+ "relationshipType": "describes",
+ "from": "https://spdx.org/spdxdocs/spdxdocument",
+ "to": [
+ "https://spdx.org/spdxdocs/openchain-telco-sbom-validator"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-attrs",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/attrs"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-beartype",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/beartype"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-beautifulsoup4",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/beautifulsoup4"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-boolean-py",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/boolean-py"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-certifi",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/certifi"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-chardet",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/chardet"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-charset-normalizer",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/charset-normalizer"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-click",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/click"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-commoncode",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/commoncode"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-fetchcode",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/fetchcode"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-fusepy",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/fusepy"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-html5lib",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/html5lib"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-htmllistparse",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/htmllistparse"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-idna",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/idna"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-license-expression",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/license-expression"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-ntia-conformance-checker",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/ntia-conformance-checker"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-packageurl-python",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/packageurl-python"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-ply",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/ply"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-prettytable",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/prettytable"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-pyparsing",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/pyparsing"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-python-dateutil",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/python-dateutil"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-python-dotenv",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/python-dotenv"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-pyyaml",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/pyyaml"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-rdflib",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/rdflib"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-requests",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/requests"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-saneyaml",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/saneyaml"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-semantic-version",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/semantic-version"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-six",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/six"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-soupsieve",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/soupsieve"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-spdx-python-model",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/spdx-python-model"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-spdx-tools",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/spdx-tools"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-text-unidecode",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/text-unidecode"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-typing-extensions",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/typing-extensions"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-uritools",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/uritools"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-urllib3",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/urllib3"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-validators",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/validators"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-wcwidth",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/wcwidth"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-webencodings",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/webencodings"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://pypi.org/contains-xmltodict",
+ "type": "Relationship",
+ "relationshipType": "contains",
+ "from": "https://spdx.org/spdxdocs/openchain-telco-sbom-validator",
+ "to": [
+ "https://spdx.org/spdxdocs/xmltodict"
+ ],
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseRef-unknown-License-OSI-Approved-BSD-License",
+ "type": "expandedlicensing_CustomLicense",
+ "simplelicensing_licenseText": "License :: OSI Approved :: BSD License",
+ "name": "LicenseRef-unknown-License-OSI-Approved-BSD-License",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseRef-unknown-License-OSI-Approved-Artistic-License",
+ "type": "expandedlicensing_CustomLicense",
+ "simplelicensing_licenseText": "License :: OSI Approved :: Artistic License",
+ "name": "LicenseRef-unknown-License-OSI-Approved-Artistic-License",
+ "creationInfo": "_:creationInfo"
+ },
+ {
+ "spdxId": "https://spdx.org/spdxdocs/LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL",
+ "type": "expandedlicensing_CustomLicense",
+ "simplelicensing_licenseText": "License :: OSI Approved :: GNU General Public License (GPL)",
+ "name": "LicenseRef-unknown-License-OSI-Approved-GNU-General-Public-License-GPL",
+ "creationInfo": "_:creationInfo"
+ }
+ ]
+}