{
  "@context": "https://spdx.org/rdf/3.0.1/spdx-context.jsonld",
  "@graph": [
    {
      "@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-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd0"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/additionalToolSPDXRef-gnrtd1"
      ],
      "created": "2026-08-22T18:46:28Z"
    },
    {
      "@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-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd2"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/additionalToolSPDXRef-gnrtd3"
      ],
      "created": "2026-08-22T18:46:28Z"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24642",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24643"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24630",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24645",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24646"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24630",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24736",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd82"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24733",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24625",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24626"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24589",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24738",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd82"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24733",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24628",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24629"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24589",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24734",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24589"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24733",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24735",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24630"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24733",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd82",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24626",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and Apache-2.0 and ISC and BSD and AFL-2.1",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24629",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and Apache-2.0 and ISC and BSD and AFL-2.1",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24643",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and Apache-2.0 and ISC and BSD and AFL-2.1",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24646",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and Apache-2.0 and ISC and BSD and AFL-2.1",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24627",
      "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-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24737",
      "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-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24644",
      "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-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24630",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24644",
      "software_downloadLocation": "NOASSERTION",
      "summary": "JavaScript runtime",
      "software_packageVersion": "1:20.18.2-1.oe2403sp1",
      "software_homePage": "http://nodejs.org/",
      "description": "Node.js is a platform built on Chrome's JavaScript runtime\nfor easily building fast, scalable network applications.\nNode.js uses an event-driven, non-blocking I/O model that\nmakes it lightweight and efficient, perfect for data-intensive\nreal-time applications that run across distributed devices.",
      "name": "nodejs",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/e30d7685744a7c83e00e34883b4caa13098c6dd4580c70b9313f50e8b8c0aee4-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/nodejs@20.18.2-1.oe2403sp1?arch=x86_64&epoch=1&upstream=nodejs-20.18.2-1.oe2403sp1.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24733",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24737",
      "software_downloadLocation": "NOASSERTION",
      "summary": "YAML 1.2 parser and serializer",
      "software_packageVersion": "0:3.10.0-2.oe2403sp1",
      "software_homePage": "https://github.com/nodeca/js-yaml",
      "description": "This is an implementation of YAML (YAML Ain't Markup Language), a human\nfriendly data serialization language. It started as PyYAML port, and was\ncompletely rewritten from scratch.  Now it's very fast, and supports the\n1.2 spec.",
      "name": "nodejs-js-yaml",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/e30d7685744a7c83e00e34883b4caa13098c6dd4580c70b9313f50e8b8c0aee4-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/nodejs-js-yaml@3.10.0-2.oe2403sp1?arch=noarch&epoch=0&upstream=nodejs-js-yaml-3.10.0-2.oe2403sp1.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24589",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/SPDXRef-gnrtd24627",
      "software_downloadLocation": "NOASSERTION",
      "summary": "JavaScript runtime",
      "software_packageVersion": "1:20.12.1-3.oe2403sp1",
      "software_homePage": "http://nodejs.org/",
      "description": "Node.js is a platform built on Chrome's JavaScript runtime\nfor easily building fast, scalable network applications.\nNode.js uses an event-driven, non-blocking I/O model that\nmakes it lightweight and efficient, perfect for data-intensive\nreal-time applications that run across distributed devices.",
      "name": "nodejs",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/e30d7685744a7c83e00e34883b4caa13098c6dd4580c70b9313f50e8b8c0aee4-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/nodejs@20.12.1-3.oe2403sp1?arch=x86_64&epoch=1&upstream=nodejs-20.12.1-3.oe2403sp1.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/additionalToolSPDXRef-gnrtd3",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_1"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/x86_64-71d03759-7c43-4b9b-b81c-c376ce2c59f0-specv3/additionalToolSPDXRef-gnrtd1",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_0"
    }
  ]
}