{
  "@context": "https://spdx.org/rdf/3.0.1/spdx-context.jsonld",
  "@graph": [
    {
      "@id": "_:creationInfo_1",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/additionalToolSPDXRef-gnrtd3"
      ],
      "created": "2026-07-04T02:24:06Z"
    },
    {
      "@id": "_:creationInfo_0",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd0"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/additionalToolSPDXRef-gnrtd1"
      ],
      "created": "2026-07-04T02:24:06Z"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2158",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2159"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2101",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd99315",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd129"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd99313",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2161",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2159"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2101",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd99317",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd129"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd99313",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd99314",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2101"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd99313",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2159",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Python-2.0",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd129",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2160",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd99316",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd99313",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd99316",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Doing dirty (but extremely useful) things with equals",
      "software_packageVersion": "0:0.8.0-1.oe2403sp4",
      "software_homePage": "https://github.com/samuelcolvin/dirty-equals",
      "description": "The dirty-equals Python library (mis)uses the __eq__ method to make python code\n(generally unit tests) more declarative and therefore easier to read and write.\n\nYou can use dirty-equals in whatever context you like, but it comes into its\nown when writing unit tests for applications where you’re commonly checking the\nresponse to API calls and the contents of a database.\n\n\n%pyproject_extras_subpkg -n python3-dirty-equals pydantic",
      "name": "python3-dirty-equals",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/69e709f4d2852d98f12867a74015d19384fe2727ff670fd70178cdde80b1e77e-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/python3-dirty-equals@0.8.0-1.oe2403sp4?arch=noarch&epoch=0&upstream=python-dirty-equals-0.8.0-1.oe2403sp4.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2101",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/SPDXRef-gnrtd2160",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Interpreter of the Python3 programming language",
      "software_packageVersion": "0:3.11.6-32.oe2403sp4",
      "software_homePage": "https://www.python.org/",
      "description": "Python combines remarkable power with very clear syntax. It has modules,\nclasses, exceptions, very high level dynamic data types, and dynamic\ntyping. There are interfaces to many system calls and libraries, as well\nas to various windowing systems. New built-in modules are easily written\nin C or C++ (or other languages, depending on the chosen implementation).\nPython is also usable as an extension language for applications written\nin other languages that need easy-to-use scripting or automation interfaces.\n\nThis package Provides python version 3.",
      "name": "python3",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/69e709f4d2852d98f12867a74015d19384fe2727ff670fd70178cdde80b1e77e-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/python3@3.11.6-32.oe2403sp4?arch=x86_64&epoch=0&upstream=python3-3.11.6-32.oe2403sp4.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/additionalToolSPDXRef-gnrtd1",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP4/everything/x86_64-4d64d0a4-9352-45cb-9c5f-6366db87449d-specv3/additionalToolSPDXRef-gnrtd3",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_1"
    }
  ]
}