{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"com.github.sbu-python-class/python-science","documentNamespace":"https://spdx.org/spdxdocs/protobom/74870105-ffee-4a5f-8a86-a0b833a3155e","comment":"Exact versions could not be resolved for some packages. For more information: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#dependencies-included.","creationInfo":{"creators":["Tool: protobom-v0.0.0-20260327162657-5aefcad73c4c+dirty","Tool: GitHub.com-Dependency-Graph"],"created":"2026-03-30T17:08:45Z"},"packages":[{"name":"actions/checkout","SPDXID":"SPDXRef-githubactions-actions-checkout-6..-75c946","versionInfo":"6.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/checkout@6.%2A.%2A"}]},{"name":"actions/setup-python","SPDXID":"SPDXRef-githubactions-actions-setup-python-6..-75c946","versionInfo":"6.*.*","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:githubactions/actions/setup-python@6.%2A.%2A"}]},{"name":"scipy","SPDXID":"SPDXRef-pypi-scipy-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/scipy"}]},{"name":"matplotlib","SPDXID":"SPDXRef-pypi-matplotlib-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/matplotlib"}]},{"name":"scikit-learn","SPDXID":"SPDXRef-pypi-scikit-learn-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/scikit-learn"}]},{"name":"keras","SPDXID":"SPDXRef-pypi-keras-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/keras"}]},{"name":"graphviz","SPDXID":"SPDXRef-pypi-graphviz-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/graphviz"}]},{"name":"sympy","SPDXID":"SPDXRef-pypi-sympy-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/sympy"}]},{"name":"sphinx-copybutton","SPDXID":"SPDXRef-pypi-sphinx-copybutton-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/sphinx-copybutton"}]},{"name":"sphinx-prompt","SPDXID":"SPDXRef-pypi-sphinx-prompt-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/sphinx-prompt"}]},{"name":"numpy","SPDXID":"SPDXRef-pypi-numpy-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/numpy"}]},{"name":"torch","SPDXID":"SPDXRef-pypi-torch-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/torch"}]},{"name":"pydot","SPDXID":"SPDXRef-pypi-pydot-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pydot"}]},{"name":"jupyterlab-myst","SPDXID":"SPDXRef-pypi-jupyterlab-myst-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/jupyterlab-myst"}]},{"name":"jupyterbook-patches","SPDXID":"SPDXRef-pypi-jupyterbook-patches-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/jupyterbook-patches"}]},{"name":"jupyter-book","SPDXID":"SPDXRef-pypi-jupyter-book-75c946","versionInfo":"\u003c 2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/jupyter-book"}]},{"name":"com.github.sbu-python-class/python-science","SPDXID":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","versionInfo":"main","downloadLocation":"git+https://github.com/sbu-python-class/python-science","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:github/sbu-python-class/python-science@main"}]}],"relationships":[{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-graphviz-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-sympy-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-torch-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-jupyterbook-patches-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-githubactions-actions-checkout-6..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-githubactions-actions-setup-python-6..-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-sphinx-prompt-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-jupyterlab-myst-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-sphinx-copybutton-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-scipy-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-matplotlib-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-numpy-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-pydot-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-jupyter-book-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-scikit-learn-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relatedSpdxElement":"SPDXRef-pypi-keras-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-github-sbu-python-class-python-science-main-f1e872","relationshipType":"DESCRIBES"}]}