{"bomFormat":"CycloneDX","specVersion":"1.5","version":1,"serialNumber":"urn:uuid:446f1fea-4110-40fb-bcd7-39f4bee189c9","metadata":{"timestamp":"2026-06-19T18:02:03Z","tools":[{"vendor":"Ecosystems","name":"Ecosystems SBOM Generator"}],"component":{"type":"application","name":"functionality-library/functionality.php"}},"components":[{"type":"library","name":"php","version":"\u003e=8.0.0","purl":"pkg:composer/php","properties":[{"name":"filePath","value":"composer.json"}]},{"type":"library","name":"ext-mbstring","version":"*","purl":"pkg:composer/ext-mbstring","properties":[{"name":"filePath","value":"composer.json"}]},{"type":"library","name":"phpunit/phpunit","version":"^9.5","purl":"pkg:composer/phpunit/phpunit","properties":[{"name":"filePath","value":"composer.json"}]},{"type":"library","name":"doctrine/instantiator","version":"1.4.1","purl":"pkg:composer/doctrine/instantiator","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"myclabs/deep-copy","version":"1.11.0","purl":"pkg:composer/myclabs/deep-copy","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"nikic/php-parser","version":"v4.14.0","purl":"pkg:composer/nikic/php-parser","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phar-io/manifest","version":"2.0.3","purl":"pkg:composer/phar-io/manifest","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phar-io/version","version":"3.2.1","purl":"pkg:composer/phar-io/version","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpdocumentor/reflection-common","version":"2.2.0","purl":"pkg:composer/phpdocumentor/reflection-common","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpdocumentor/reflection-docblock","version":"5.3.0","purl":"pkg:composer/phpdocumentor/reflection-docblock","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpdocumentor/type-resolver","version":"1.6.1","purl":"pkg:composer/phpdocumentor/type-resolver","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpspec/prophecy","version":"v1.15.0","purl":"pkg:composer/phpspec/prophecy","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpunit/php-code-coverage","version":"9.2.15","purl":"pkg:composer/phpunit/php-code-coverage","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpunit/php-file-iterator","version":"3.0.6","purl":"pkg:composer/phpunit/php-file-iterator","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpunit/php-invoker","version":"3.1.1","purl":"pkg:composer/phpunit/php-invoker","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpunit/php-text-template","version":"2.0.4","purl":"pkg:composer/phpunit/php-text-template","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpunit/php-timer","version":"5.0.3","purl":"pkg:composer/phpunit/php-timer","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"phpunit/phpunit","version":"9.5.20","purl":"pkg:composer/phpunit/phpunit","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/cli-parser","version":"1.0.1","purl":"pkg:composer/sebastian/cli-parser","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/code-unit","version":"1.0.8","purl":"pkg:composer/sebastian/code-unit","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/code-unit-reverse-lookup","version":"2.0.3","purl":"pkg:composer/sebastian/code-unit-reverse-lookup","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/comparator","version":"4.0.6","purl":"pkg:composer/sebastian/comparator","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/complexity","version":"2.0.2","purl":"pkg:composer/sebastian/complexity","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/diff","version":"4.0.4","purl":"pkg:composer/sebastian/diff","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/environment","version":"5.1.4","purl":"pkg:composer/sebastian/environment","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/exporter","version":"4.0.4","purl":"pkg:composer/sebastian/exporter","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/global-state","version":"5.0.5","purl":"pkg:composer/sebastian/global-state","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/lines-of-code","version":"1.0.3","purl":"pkg:composer/sebastian/lines-of-code","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/object-enumerator","version":"4.0.4","purl":"pkg:composer/sebastian/object-enumerator","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/object-reflector","version":"2.0.4","purl":"pkg:composer/sebastian/object-reflector","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/recursion-context","version":"4.0.4","purl":"pkg:composer/sebastian/recursion-context","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/resource-operations","version":"3.0.3","purl":"pkg:composer/sebastian/resource-operations","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/type","version":"3.0.0","purl":"pkg:composer/sebastian/type","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"sebastian/version","version":"3.0.2","purl":"pkg:composer/sebastian/version","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"theseer/tokenizer","version":"1.2.1","purl":"pkg:composer/theseer/tokenizer","properties":[{"name":"filePath","value":"composer.lock"}]},{"type":"library","name":"webmozart/assert","version":"1.11.0","purl":"pkg:composer/webmozart/assert","properties":[{"name":"filePath","value":"composer.lock"}]}]}