{
  "@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-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd2"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/additionalToolSPDXRef-gnrtd3"
      ],
      "created": "2026-10-24T18:33:34Z"
    },
    {
      "@id": "_:creationInfo_0",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd0"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/additionalToolSPDXRef-gnrtd1"
      ],
      "created": "2026-10-24T18:33:34Z"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45749",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45750"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45747",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45756",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45757"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45754",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45759",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45760"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45754",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45752",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45753"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45747",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45755",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45747"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45754",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45760",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and BSD",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45757",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and BSD",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45753",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and BSD",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45750",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and BSD",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45751",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45758",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45754",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45758",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Documentation for rubygem-rack",
      "software_packageVersion": "1:2.2.4-11.oe2403sp1",
      "software_homePage": "https://rack.github.io/",
      "description": "Documentation for rubygem-rack.",
      "name": "rubygem-rack-help",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/5f5a125b974111494a1e8d73b08f99b6ec10ac0f27df904199a4f8a42f3ed31d-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/rubygem-rack-help@2.2.4-11.oe2403sp1?arch=noarch&epoch=1&upstream=rubygem-rack-2.2.4-11.oe2403sp1.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45747",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/SPDXRef-gnrtd45751",
      "software_downloadLocation": "NOASSERTION",
      "summary": "A modular Ruby webserver interface",
      "software_packageVersion": "1:2.2.4-11.oe2403sp1",
      "software_homePage": "https://rack.github.io/",
      "description": "Rack provides a minimal, modular and adaptable interface for developing\nweb applications in Ruby.  By wrapping HTTP requests and responses in\nthe simplest way possible, it unifies and distills the API for web\nservers, web frameworks, and software in between (the so-called\nmiddleware) into a single method call.",
      "name": "rubygem-rack",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/5f5a125b974111494a1e8d73b08f99b6ec10ac0f27df904199a4f8a42f3ed31d-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/rubygem-rack@2.2.4-11.oe2403sp1?arch=noarch&epoch=1&upstream=rubygem-rack-2.2.4-11.oe2403sp1.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/additionalToolSPDXRef-gnrtd1",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-e76d0b09-2a72-412a-820b-e38a8146f0d9-specv3/additionalToolSPDXRef-gnrtd3",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_1"
    }
  ]
}