{
  "@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/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd0"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/additionalToolSPDXRef-gnrtd1"
      ],
      "created": "2026-07-04T18:18:03Z"
    },
    {
      "@id": "_:creationInfo_1",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd2"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/additionalToolSPDXRef-gnrtd3"
      ],
      "created": "2026-07-04T18:18:03Z"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21737",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21738"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21732",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd122",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd123"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd119",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21734",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21735"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21732",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd125",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd126"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd119",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21733",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd119"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21732",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd126",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "BSD or GPLv2+",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21735",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "BSD or GPLv2+",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd123",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "BSD or GPLv2+",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21738",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "BSD or GPLv2+",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21736",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd124",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21732",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd21736",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Support for development of applications using the libpwquality library",
      "software_packageVersion": "0:1.4.5-2.oe2403",
      "software_homePage": "https://github.com/libpwquality/libpwquality/",
      "description": "Files needed for development of applications using the libpwquality library.\nSee the pwquality.h header file for the API.",
      "name": "libpwquality-devel",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/9b2ee55844e864ec17da870960e33c0b4d69092a893cd7daa8a2acffe004cc46-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/libpwquality-devel@1.4.5-2.oe2403?arch=aarch64&epoch=0&upstream=libpwquality-1.4.5-2.oe2403.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd119",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/SPDXRef-gnrtd124",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Library for password quality checking and generating random passwords.",
      "software_packageVersion": "0:1.4.5-2.oe2403",
      "software_homePage": "https://github.com/libpwquality/libpwquality/",
      "description": "The libpwquality library purpose is to provide common functions for password quality checking and also scoring them based on their apparent randomness.\nThe library also provides a function for generating random passwords with good pronounceability.\nThe library supports reading and parsing of a configuration file.",
      "name": "libpwquality",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/9b2ee55844e864ec17da870960e33c0b4d69092a893cd7daa8a2acffe004cc46-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/libpwquality@1.4.5-2.oe2403?arch=aarch64&epoch=0&upstream=libpwquality-1.4.5-2.oe2403.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/additionalToolSPDXRef-gnrtd1",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS/update/aarch64-37f5fa8b-6640-4d66-9aa8-ac03dca9d8d3-specv3/additionalToolSPDXRef-gnrtd3",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_1"
    }
  ]
}