{
  "bomFormat": "CycloneDX",
  "specVersion": "1.7",
  "serialNumber": "urn:uuid:9a60a743-1048-40e5-8a79-7872c7f9d83e",
  "version": 1,
  "metadata": {
    "timestamp": "2026-09-24T02:53:28Z",
    "tools": {
      "components": [
        {
          "group": "@cyclonedx",
          "name": "cdxgen",
          "version": "12.8.4",
          "purl": "pkg:npm/%40cyclonedx/cdxgen@12.8.4",
          "type": "application",
          "bom-ref": "pkg:npm/@cyclonedx/cdxgen@12.8.4",
          "publisher": "OWASP Foundation",
          "authors": [
            {
              "name": "OWASP Foundation"
            }
          ]
        }
      ]
    },
    "authors": [
      {
        "name": "OWASP Foundation"
      }
    ],
    "lifecycles": [
      {
        "phase": "pre-build"
      }
    ],
    "component": {
      "name": "canonical-path",
      "group": "",
      "version": "1.0.0",
      "description": "paths that always use forward slashes",
      "purl": "pkg:npm/canonical-path@1.0.0",
      "bom-ref": "pkg:npm/canonical-path@1.0.0",
      "author": "Pete Bacon Darwin",
      "properties": [
        {
          "name": "cdx:npm:scripts",
          "value": "test"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "type": "application",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ]
    },
    "properties": [
      {
        "name": "cdx:bom:componentTypes",
        "value": "npm"
      },
      {
        "name": "cdx:bom:componentSrcFiles",
        "value": "yarn.lock"
      }
    ]
  },
  "components": [
    {
      "group": "",
      "name": "balanced-match",
      "version": "1.0.0",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-1",
          "content": "89b4d199ab2bee49de164ea02b89ce462d71b767"
        }
      ],
      "purl": "pkg:npm/balanced-match@1.0.0",
      "type": "library",
      "bom-ref": "pkg:npm/balanced-match@1.0.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "brace-expansion",
      "version": "1.1.11",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-512",
          "content": "882b8f1c3160ac75fb1f6bc423fe71a73d3bcd21c1d344e9ba0aa1998b5598c3bae75f260ae44ca0e60595d101974835f3bb9fa3375a1e058a71815beb5a8688"
        }
      ],
      "purl": "pkg:npm/brace-expansion@1.1.11",
      "type": "library",
      "bom-ref": "pkg:npm/brace-expansion@1.1.11",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "concat-map",
      "version": "0.0.1",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-1",
          "content": "d8a96bd77fd68df7793a73036a3ba0d5405d477b"
        }
      ],
      "purl": "pkg:npm/concat-map@0.0.1",
      "type": "library",
      "bom-ref": "pkg:npm/concat-map@0.0.1",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "fs.realpath",
      "version": "1.0.0",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-1",
          "content": "1504ad2523158caa40db4a2787cb01411994ea4f"
        }
      ],
      "purl": "pkg:npm/fs.realpath@1.0.0",
      "type": "library",
      "bom-ref": "pkg:npm/fs.realpath@1.0.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "glob",
      "version": "7.1.3",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-512",
          "content": "bdc7ee888c6880b5780e51811c850ec08d086eb27c1d63dce0c53b1f3be219e361a3f5090df8ba079a77b07796210d0a188534269c62e591f17a641f2e4900c1"
        }
      ],
      "purl": "pkg:npm/glob@7.1.3",
      "type": "library",
      "bom-ref": "pkg:npm/glob@7.1.3",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "inflight",
      "version": "1.0.6",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-1",
          "content": "49bd6331d7d02d0c09bc910a1075ba8165b56df9"
        }
      ],
      "purl": "pkg:npm/inflight@1.0.6",
      "type": "library",
      "bom-ref": "pkg:npm/inflight@1.0.6",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "inherits",
      "version": "2.0.3",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-1",
          "content": "633c2c83e3da42a502f52466022480f4208261de"
        }
      ],
      "purl": "pkg:npm/inherits@2.0.3",
      "type": "library",
      "bom-ref": "pkg:npm/inherits@2.0.3",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "jasmine-core",
      "version": "3.2.1",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-512",
          "content": "a5af6d6c15a0534104e125a073ce53e2c6bcf3ab9fb9076c82bb9000d8440988f0aa0578cfb570ff8f7d68268ff191fbf490d2e2f866f1da031bd1cee3e7b8b0"
        }
      ],
      "purl": "pkg:npm/jasmine-core@3.2.1",
      "type": "library",
      "bom-ref": "pkg:npm/jasmine-core@3.2.1",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "jasmine",
      "version": "3.2.0",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-512",
          "content": "aafe93677dabfac96b433f1f6f1d848466c3f73949a373703eba4b2b59c4f229c82ed64ef456a9e76a721e4ee6353878b46e746bed7eb4e896553de33b92344a"
        }
      ],
      "purl": "pkg:npm/jasmine@3.2.0",
      "type": "library",
      "bom-ref": "pkg:npm/jasmine@3.2.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "minimatch",
      "version": "3.0.4",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-512",
          "content": "c891d5404872a8f2d44e0b7d07cdcf5eee96debc7832fbc7bd252f4e8a20a70a060ce510fb20eb4741d1a2dfb23827423bbbb8857de959fb7a91604172a87450"
        }
      ],
      "purl": "pkg:npm/minimatch@3.0.4",
      "type": "library",
      "bom-ref": "pkg:npm/minimatch@3.0.4",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "once",
      "version": "1.4.0",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-1",
          "content": "583b1aa775961d4b113ac17d9c50baef9dd76bd1"
        }
      ],
      "purl": "pkg:npm/once@1.4.0",
      "type": "library",
      "bom-ref": "pkg:npm/once@1.4.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "path-is-absolute",
      "version": "1.0.1",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-1",
          "content": "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
        }
      ],
      "purl": "pkg:npm/path-is-absolute@1.0.1",
      "type": "library",
      "bom-ref": "pkg:npm/path-is-absolute@1.0.1",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "wrappy",
      "version": "1.0.2",
      "scope": "optional",
      "hashes": [
        {
          "alg": "SHA-1",
          "content": "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
        }
      ],
      "purl": "pkg:npm/wrappy@1.0.2",
      "type": "library",
      "bom-ref": "pkg:npm/wrappy@1.0.2",
      "properties": [
        {
          "name": "SrcFile",
          "value": "yarn.lock"
        },
        {
          "name": "cdx:npm:package:development",
          "value": "true"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 1,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 1,
                "value": "yarn.lock"
              }
            ],
            "concludedValue": "yarn.lock"
          }
        ]
      }
    }
  ],
  "dependencies": [
    {
      "ref": "pkg:npm/balanced-match@1.0.0",
      "dependsOn": []
    },
    {
      "ref": "pkg:npm/brace-expansion@1.1.11",
      "dependsOn": [
        "pkg:npm/balanced-match@1.0.0",
        "pkg:npm/concat-map@0.0.1"
      ]
    },
    {
      "ref": "pkg:npm/concat-map@0.0.1",
      "dependsOn": []
    },
    {
      "ref": "pkg:npm/fs.realpath@1.0.0",
      "dependsOn": []
    },
    {
      "ref": "pkg:npm/glob@7.1.3",
      "dependsOn": [
        "pkg:npm/fs.realpath@1.0.0",
        "pkg:npm/inflight@1.0.6",
        "pkg:npm/inherits@2.0.3",
        "pkg:npm/minimatch@3.0.4",
        "pkg:npm/once@1.4.0",
        "pkg:npm/path-is-absolute@1.0.1"
      ]
    },
    {
      "ref": "pkg:npm/inflight@1.0.6",
      "dependsOn": [
        "pkg:npm/once@1.4.0",
        "pkg:npm/wrappy@1.0.2"
      ]
    },
    {
      "ref": "pkg:npm/inherits@2.0.3",
      "dependsOn": []
    },
    {
      "ref": "pkg:npm/jasmine-core@3.2.1",
      "dependsOn": []
    },
    {
      "ref": "pkg:npm/jasmine@3.2.0",
      "dependsOn": [
        "pkg:npm/glob@7.1.3",
        "pkg:npm/jasmine-core@3.2.1"
      ]
    },
    {
      "ref": "pkg:npm/minimatch@3.0.4",
      "dependsOn": [
        "pkg:npm/brace-expansion@1.1.11"
      ]
    },
    {
      "ref": "pkg:npm/once@1.4.0",
      "dependsOn": [
        "pkg:npm/wrappy@1.0.2"
      ]
    },
    {
      "ref": "pkg:npm/path-is-absolute@1.0.1",
      "dependsOn": []
    },
    {
      "ref": "pkg:npm/wrappy@1.0.2",
      "dependsOn": []
    },
    {
      "ref": "pkg:npm/canonical-path@1.0.0",
      "dependsOn": [
        "pkg:npm/balanced-match@1.0.0",
        "pkg:npm/brace-expansion@1.1.11",
        "pkg:npm/concat-map@0.0.1",
        "pkg:npm/fs.realpath@1.0.0",
        "pkg:npm/glob@7.1.3",
        "pkg:npm/inflight@1.0.6",
        "pkg:npm/inherits@2.0.3",
        "pkg:npm/jasmine-core@3.2.1",
        "pkg:npm/jasmine@3.2.0",
        "pkg:npm/minimatch@3.0.4",
        "pkg:npm/once@1.4.0",
        "pkg:npm/path-is-absolute@1.0.1",
        "pkg:npm/wrappy@1.0.2"
      ]
    }
  ],
  "annotations": [
    {
      "bom-ref": "metadata-annotations",
      "subjects": [
        "pkg:npm/canonical-path@1.0.0"
      ],
      "annotator": {
        "component": {
          "group": "@cyclonedx",
          "name": "cdxgen",
          "version": "12.8.4",
          "purl": "pkg:npm/%40cyclonedx/cdxgen@12.8.4",
          "type": "application",
          "bom-ref": "pkg:npm/@cyclonedx/cdxgen@12.8.4",
          "publisher": "OWASP Foundation",
          "authors": [
            {
              "name": "OWASP Foundation"
            }
          ]
        }
      },
      "timestamp": "2026-09-24T02:53:28Z",
      "text": "This Software Bill-of-Materials (SBOM) document was created on Thursday, September 24, 2026 with cdxgen. The data was captured during the pre-build lifecycle phase without building the application. The document describes an application named 'canonical-path' with version '1.0.0'."
    }
  ]
}