{
  "@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-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd2"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/additionalToolSPDXRef-gnrtd3"
      ],
      "created": "2026-07-04T17:52:28Z"
    },
    {
      "@id": "_:creationInfo_0",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd0"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/additionalToolSPDXRef-gnrtd1"
      ],
      "created": "2026-07-04T17:52:28Z"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3261",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3262"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3231",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3242",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3243"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3235",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3239",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3240"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3235",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15625",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15626"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15622",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3264",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3265"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3231",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15628",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15629"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15622",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15624",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3235"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15622",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15623",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3231"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15622",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3262",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "(Ruby OR MIT)",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15629",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "BSD",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3243",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "(Ruby or BSD) and Public Domain and MIT and CC0 and zlib and UCD",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3265",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "(Ruby OR MIT)",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15626",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "BSD",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3240",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "(Ruby or BSD) and Public Domain and MIT and CC0 and zlib and UCD",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3241",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15627",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3263",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3235",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3241",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Object-oriented scripting language interpreter",
      "software_packageVersion": "0:3.2.2-152.oe2403sp3",
      "software_homePage": "https://www.ruby-lang.org/en/",
      "description": "Ruby is a fast and easy interpreted scripting language for object-oriented programming.\nIt has many functions for processing text Files and perform system management tasks (such as Perl).",
      "name": "ruby",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/c0e25e2e553dcd55ea9dbe2ce833d6a6a718c344ea9f4e23b8f3555958d6ecdc-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/ruby@3.2.2-152.oe2403sp3?arch=x86_64&epoch=0&upstream=ruby-3.2.2-152.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3231",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd3263",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Ruby standard for wrapping ruby libraries",
      "software_packageVersion": "0:3.4.10-152.oe2403sp3",
      "software_homePage": "https://www.ruby-lang.org/en/",
      "description": "The Ruby standard for publishing and managing third party libraries provided by RubyGems.",
      "name": "rubygems",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/c0e25e2e553dcd55ea9dbe2ce833d6a6a718c344ea9f4e23b8f3555958d6ecdc-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/rubygems@3.4.10-152.oe2403sp3?arch=noarch&epoch=0&upstream=ruby-3.2.2-152.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15622",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/SPDXRef-gnrtd15627",
      "software_downloadLocation": "NOASSERTION",
      "summary": "An XML toolkit for Ruby",
      "software_packageVersion": "0:3.2.5-152.oe2403sp3",
      "software_homePage": "https://github.com/ruby/rexml",
      "description": "REXML was inspired by the Electric XML library for Java, which features an\neasy-to-use API, small size, and speed. Hopefully, REXML, designed with the same\nphilosophy, has these same features. I've tried to keep the API as intuitive as\npossible, and have followed the Ruby methodology for method naming and code\nflow, rather than mirroring the Java API.\n\nREXML supports both tree and stream document parsing. Stream parsing is faster\n(about 1.5 times as fast). However, with stream parsing, you don't get access to\nfeatures such as XPath.",
      "name": "rubygem-rexml",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/c0e25e2e553dcd55ea9dbe2ce833d6a6a718c344ea9f4e23b8f3555958d6ecdc-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/rubygem-rexml@3.2.5-152.oe2403sp3?arch=noarch&epoch=0&upstream=ruby-3.2.2-152.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/additionalToolSPDXRef-gnrtd3",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_1"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-d34ecb43-c0e9-40db-b1a7-ee22bc41dd4e-specv3/additionalToolSPDXRef-gnrtd1",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_0"
    }
  ]
}