{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/17"}],"enrichment":{"capability":"Provides Python bindings for the SPDX 3 data model, enabling direct manipulation of SPDX documents through auto-generated classes from RDF and SHACL specifications.","skillfed_tags":["sbom","standards-compliance"],"use_cases":["Parse and deserialize existing SPDX 3 JSON documents into Python objects for inspection or modification","Programmatically construct SPDX 3 documents from scratch by instantiating model classes like Person, Package, or Bundle","Build software bill-of-materials (SBOM) generation tools that emit valid SPDX 3 output","Integrate SPDX 3 data handling into build systems or CI/CD pipelines that need to work with standardized software metadata"],"what_it_does":"spdx-python-model is a Python library that provides direct bindings to the SPDX 3 specification through auto-generated classes. The bindings are created from the official RDF and SHACL definitions of SPDX 3 using shacl2code during package build, ensuring they stay synchronized with the specification. It exposes low-level, direct access to SPDX data structures organized by version (e.g., v3_0_1), allowing you to instantiate and manipulate SPDX objects programmatically.\n\nThe library is intended for developers who need to work directly with SPDX files or build SPDX documents from code. It includes a load() API that can automatically detect and deserialize SPDX documents from disk. However, the bindings are intentionally low-level\u2014they lack higher-level convenience functions for common SPDX creation tasks. If you need a more ergonomic API, the SPDX Python Tools project offers a higher-level interface, though it does not yet support SPDX 3.","worth_installing":"Yes, if you need to work with SPDX 3 documents in Python. The library has low install friction, no runtime dependencies, active maintenance, and permissive licensing. It is the canonical bindings for SPDX 3 and supports modern Python versions. Caveat: it is low-level and lacks convenience helpers\u2014suitable for direct manipulation but not for rapid prototyping of SPDX workflows."},"id":"spdx-python-model","links":{"html":"https://skillfed.io/packages/spdx-python-model","md":"https://skillfed.io/packages/spdx-python-model.md","pypi":"https://pypi.org/project/spdx-python-model/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-23","license_spdx":"Apache-2.0","license_treatment":"permissive","name":"spdx-python-model","python_support":"supports_current","summary":"SPDX Model Python Bindings"},"popularity":{"monthly_downloads":173470,"position":10307,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.0.6"}
