{
  "@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/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd2"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/additionalToolSPDXRef-gnrtd3"
      ],
      "created": "2026-07-04T17:57:54Z"
    },
    {
      "@id": "_:creationInfo_0",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd0"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/additionalToolSPDXRef-gnrtd1"
      ],
      "created": "2026-07-04T17:57:54Z"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd91",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd92"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd90",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd103",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd7"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd98",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd71",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd20"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd70",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd73",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd20"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd70",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd101",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd7"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd98",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd94",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd92"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd90",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd99",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd90"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd98",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd100",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd70"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd98",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd92",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "BSD-3-Clause",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd20",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "Apache-2.0",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd7",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MulanPSL-2.0",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd93",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd72",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd102",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd70",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd72",
      "software_downloadLocation": "NOASSERTION",
      "summary": "A streaming multipart parser for Python",
      "software_packageVersion": "0:0.0.22-1.oe2403sp3",
      "software_homePage": "https://github.com/Kludex/python-multipart",
      "description": "Python-Multipart is a streaming multipart parser for Python.",
      "name": "python3-python-multipart",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/d26627f0cbfe50985289bc4a6372229a17ca1ee2a5b5343e9c79528433b8a4e3-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/python3-python-multipart@0.0.22-1.oe2403sp3?arch=noarch&epoch=0&upstream=python-python-multipart-0.0.22-1.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd98",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd102",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Document Parsing and Retrieval-Augmented Engine",
      "software_packageVersion": "0:0.10.2-4.oe2403sp3",
      "software_homePage": "https://gitee.com/openeuler/euler-copilot-rag",
      "description": "A document parsing and retrieval-augmented engine with 10+ format support, 7+ retrieval enhancement methods and automated testing pipeline.",
      "name": "euler-copilot-rag",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/d26627f0cbfe50985289bc4a6372229a17ca1ee2a5b5343e9c79528433b8a4e3-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/euler-copilot-rag@0.10.2-4.oe2403sp3?arch=x86_64&epoch=0&upstream=euler-copilot-rag-0.10.2-4.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd90",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/SPDXRef-gnrtd93",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Read key-value pairs from a .env file and set them as environment variables",
      "software_packageVersion": "0:1.2.2-1.oe2403sp3",
      "software_homePage": "https://github.com/theskumar/python-dotenv",
      "description": "Python-dotenv reads key-value pairs from a .env file and can set them as environment variables. It helps in the development of applications following the 12-factor principles.",
      "name": "python3-dotenv",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/d26627f0cbfe50985289bc4a6372229a17ca1ee2a5b5343e9c79528433b8a4e3-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/python3-dotenv@1.2.2-1.oe2403sp3?arch=noarch&epoch=0&upstream=python-dotenv-1.2.2-1.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-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/EPOL/update/main/x86_64-4a6717f4-8947-4a82-8b71-a0f97e8519db-specv3/additionalToolSPDXRef-gnrtd1",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_0"
    }
  ]
}