UNPKG

@cyclonedx/cdxgen

Version:

Creates CycloneDX Software Bill of Materials (SBOM) from source or container image

1,334 lines (1,331 loc) 255 kB
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$comment": "This file was automatically generated by shacl2code. DO NOT MANUALLY MODIFY IT", "type": "object", "properties": { "@context": { "const": "https://spdx.org/rdf/3.0.1/spdx-context.jsonld" } }, "required": ["@context"], "if": { "type": "object", "required": ["@graph"] }, "then": { "type": "object", "properties": { "@graph": { "description": "Top level container for JSON-LD objects", "type": "array", "items": { "type": "object", "$ref": "#/$defs/AnyClass", "unevaluatedProperties": false } } }, "required": ["@graph"] }, "else": { "$ref": "#/$defs/AnyClass" }, "unevaluatedProperties": false, "$defs": { "ai_EnergyConsumption": { "if": { "type": "object", "properties": { "type": { "const": "ai_EnergyConsumption" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/ai_EnergyConsumption_props" } ] }, "else": { "const": "Not a ai_EnergyConsumption" } }, "ai_EnergyConsumption_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ai_EnergyConsumption" } ] }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ai_EnergyConsumption_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { "ai_finetuningEnergyConsumption": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_ai_EnergyConsumption_ai_finetuningEnergyConsumption" } } ] }, "ai_inferenceEnergyConsumption": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_ai_EnergyConsumption_ai_inferenceEnergyConsumption" } } ] }, "ai_trainingEnergyConsumption": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_ai_EnergyConsumption_ai_trainingEnergyConsumption" } } ] } } } ] }, "prop_ai_EnergyConsumption_ai_finetuningEnergyConsumption": { "$ref": "#/$defs/ai_EnergyConsumptionDescription_derived" }, "prop_ai_EnergyConsumption_ai_inferenceEnergyConsumption": { "$ref": "#/$defs/ai_EnergyConsumptionDescription_derived" }, "prop_ai_EnergyConsumption_ai_trainingEnergyConsumption": { "$ref": "#/$defs/ai_EnergyConsumptionDescription_derived" }, "ai_EnergyConsumptionDescription": { "if": { "type": "object", "properties": { "type": { "const": "ai_EnergyConsumptionDescription" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/ai_EnergyConsumptionDescription_props" } ] }, "else": { "const": "Not a ai_EnergyConsumptionDescription" } }, "ai_EnergyConsumptionDescription_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ai_EnergyConsumptionDescription" } ] }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ai_EnergyConsumptionDescription_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { "ai_energyQuantity": { "$ref": "#/$defs/prop_ai_EnergyConsumptionDescription_ai_energyQuantity" }, "ai_energyUnit": { "$ref": "#/$defs/prop_ai_EnergyConsumptionDescription_ai_energyUnit" } }, "required": [ "ai_energyQuantity", "ai_energyUnit" ] } ] }, "prop_ai_EnergyConsumptionDescription_ai_energyQuantity": { "anyOf": [ { "type": "number" }, { "type": "string", "pattern": "^-?[0-9]+(\\.[0-9]*)?$" } ] }, "prop_ai_EnergyConsumptionDescription_ai_energyUnit": { "enum": [ "kilowattHour", "megajoule", "other" ] }, "ai_EnergyUnitType": { "if": { "type": "object", "properties": { "type": { "const": "ai_EnergyUnitType" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/ai_EnergyUnitType_props" } ] }, "else": { "const": "Not a ai_EnergyUnitType" } }, "ai_EnergyUnitType_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ai_EnergyUnitType" } ] }, { "const": "spdx:AI/EnergyUnitType/kilowattHour" }, { "const": "spdx:AI/EnergyUnitType/megajoule" }, { "const": "spdx:AI/EnergyUnitType/other" }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ai_EnergyUnitType_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { } } ] }, "ai_SafetyRiskAssessmentType": { "if": { "type": "object", "properties": { "type": { "const": "ai_SafetyRiskAssessmentType" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/ai_SafetyRiskAssessmentType_props" } ] }, "else": { "const": "Not a ai_SafetyRiskAssessmentType" } }, "ai_SafetyRiskAssessmentType_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ai_SafetyRiskAssessmentType" } ] }, { "const": "spdx:AI/SafetyRiskAssessmentType/high" }, { "const": "spdx:AI/SafetyRiskAssessmentType/low" }, { "const": "spdx:AI/SafetyRiskAssessmentType/medium" }, { "const": "spdx:AI/SafetyRiskAssessmentType/serious" }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ai_SafetyRiskAssessmentType_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { } } ] }, "AnnotationType": { "if": { "type": "object", "properties": { "type": { "const": "AnnotationType" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/AnnotationType_props" } ] }, "else": { "const": "Not a AnnotationType" } }, "AnnotationType_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/AnnotationType" } ] }, { "const": "spdx:Core/AnnotationType/other" }, { "const": "spdx:Core/AnnotationType/review" }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "AnnotationType_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { } } ] }, "CreationInfo": { "if": { "type": "object", "properties": { "type": { "const": "CreationInfo" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/CreationInfo_props" } ] }, "else": { "const": "Not a CreationInfo" } }, "CreationInfo_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/CreationInfo" } ] }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "CreationInfo_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { "comment": { "$ref": "#/$defs/prop_CreationInfo_comment" }, "created": { "$ref": "#/$defs/prop_CreationInfo_created" }, "createdBy": { "anyOf": [ { "type": "array", "minItems": 1, "items": { "$ref": "#/$defs/prop_CreationInfo_createdBy" } } ] }, "createdUsing": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_CreationInfo_createdUsing" } } ] }, "specVersion": { "$ref": "#/$defs/prop_CreationInfo_specVersion" } }, "required": [ "created", "createdBy", "specVersion" ] } ] }, "prop_CreationInfo_comment": { "type": "string" }, "prop_CreationInfo_created": { "type": "string", "allOf": [ { "pattern": "^[0-9]{4}-[0-1][0-9]-[0-3][0-9]T[0-2][0-9]:[0-6][0-9]:[0-6][0-9](Z|[+-][0-9]{2}:[0-9]{2})$" }, { "pattern": "^\\d\\d\\d\\d-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\dZ$" } ] }, "prop_CreationInfo_createdBy": { "$ref": "#/$defs/Agent_derived" }, "prop_CreationInfo_createdUsing": { "$ref": "#/$defs/Tool_derived" }, "prop_CreationInfo_specVersion": { "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$", "type": "string" }, "DictionaryEntry": { "if": { "type": "object", "properties": { "type": { "const": "DictionaryEntry" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/DictionaryEntry_props" } ] }, "else": { "const": "Not a DictionaryEntry" } }, "DictionaryEntry_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/DictionaryEntry" } ] }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "DictionaryEntry_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { "key": { "$ref": "#/$defs/prop_DictionaryEntry_key" }, "value": { "$ref": "#/$defs/prop_DictionaryEntry_value" } }, "required": [ "key" ] } ] }, "prop_DictionaryEntry_key": { "type": "string" }, "prop_DictionaryEntry_value": { "type": "string" }, "Element_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ai_AIPackage" }, { "$ref": "#/$defs/build_Build" }, { "$ref": "#/$defs/Agent" }, { "$ref": "#/$defs/Annotation" }, { "$ref": "#/$defs/Bom" }, { "$ref": "#/$defs/Bundle" }, { "$ref": "#/$defs/IndividualElement" }, { "$ref": "#/$defs/LifecycleScopedRelationship" }, { "$ref": "#/$defs/Organization" }, { "$ref": "#/$defs/Person" }, { "$ref": "#/$defs/Relationship" }, { "$ref": "#/$defs/SoftwareAgent" }, { "$ref": "#/$defs/SpdxDocument" }, { "$ref": "#/$defs/Tool" }, { "$ref": "#/$defs/dataset_DatasetPackage" }, { "$ref": "#/$defs/expandedlicensing_ConjunctiveLicenseSet" }, { "$ref": "#/$defs/expandedlicensing_CustomLicense" }, { "$ref": "#/$defs/expandedlicensing_CustomLicenseAddition" }, { "$ref": "#/$defs/expandedlicensing_DisjunctiveLicenseSet" }, { "$ref": "#/$defs/expandedlicensing_IndividualLicensingInfo" }, { "$ref": "#/$defs/expandedlicensing_ListedLicense" }, { "$ref": "#/$defs/expandedlicensing_ListedLicenseException" }, { "$ref": "#/$defs/expandedlicensing_OrLaterOperator" }, { "$ref": "#/$defs/expandedlicensing_WithAdditionOperator" }, { "$ref": "#/$defs/security_CvssV2VulnAssessmentRelationship" }, { "$ref": "#/$defs/security_CvssV3VulnAssessmentRelationship" }, { "$ref": "#/$defs/security_CvssV4VulnAssessmentRelationship" }, { "$ref": "#/$defs/security_EpssVulnAssessmentRelationship" }, { "$ref": "#/$defs/security_ExploitCatalogVulnAssessmentRelationship" }, { "$ref": "#/$defs/security_SsvcVulnAssessmentRelationship" }, { "$ref": "#/$defs/security_VexAffectedVulnAssessmentRelationship" }, { "$ref": "#/$defs/security_VexFixedVulnAssessmentRelationship" }, { "$ref": "#/$defs/security_VexNotAffectedVulnAssessmentRelationship" }, { "$ref": "#/$defs/security_VexUnderInvestigationVulnAssessmentRelationship" }, { "$ref": "#/$defs/security_Vulnerability" }, { "$ref": "#/$defs/simplelicensing_LicenseExpression" }, { "$ref": "#/$defs/simplelicensing_SimpleLicensingText" }, { "$ref": "#/$defs/software_File" }, { "$ref": "#/$defs/software_Package" }, { "$ref": "#/$defs/software_Sbom" }, { "$ref": "#/$defs/software_Snippet" } ] }, { "const": "NoAssertionElement" }, { "const": "NoneElement" }, { "const": "SpdxOrganization" }, { "const": "expandedlicensing_NoAssertionLicense" }, { "const": "expandedlicensing_NoneLicense" }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "Element_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { "comment": { "$ref": "#/$defs/prop_Element_comment" }, "creationInfo": { "$ref": "#/$defs/prop_Element_creationInfo" }, "description": { "$ref": "#/$defs/prop_Element_description" }, "extension": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_Element_extension" } } ] }, "extension": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_Element_extension" } } ] }, "externalIdentifier": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_Element_externalIdentifier" } } ] }, "externalRef": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_Element_externalRef" } } ] }, "name": { "$ref": "#/$defs/prop_Element_name" }, "summary": { "$ref": "#/$defs/prop_Element_summary" }, "verifiedUsing": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_Element_verifiedUsing" } } ] } }, "required": [ "creationInfo" ] } ] }, "prop_Element_comment": { "type": "string" }, "prop_Element_creationInfo": { "$ref": "#/$defs/CreationInfo_derived" }, "prop_Element_description": { "type": "string" }, "prop_Element_extension": { "$ref": "#/$defs/extension_Extension_derived" }, "prop_Element_extension": { "$ref": "#/$defs/extension_Extension_derived" }, "prop_Element_externalIdentifier": { "$ref": "#/$defs/ExternalIdentifier_derived" }, "prop_Element_externalRef": { "$ref": "#/$defs/ExternalRef_derived" }, "prop_Element_name": { "type": "string" }, "prop_Element_summary": { "type": "string" }, "prop_Element_verifiedUsing": { "$ref": "#/$defs/IntegrityMethod_derived" }, "ElementCollection_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/Bom" }, { "$ref": "#/$defs/Bundle" }, { "$ref": "#/$defs/SpdxDocument" }, { "$ref": "#/$defs/software_Sbom" } ] }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ElementCollection_props": { "allOf": [ { "$ref": "#/$defs/Element_props" }, { "type": "object", "properties": { "element": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_ElementCollection_element" } } ] }, "profileConformance": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_ElementCollection_profileConformance" } } ] }, "rootElement": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_ElementCollection_rootElement" } } ] } } } ] }, "prop_ElementCollection_element": { "$ref": "#/$defs/Element_derived" }, "prop_ElementCollection_profileConformance": { "enum": [ "ai", "build", "core", "dataset", "expandedLicensing", "extension", "lite", "security", "simpleLicensing", "software" ] }, "prop_ElementCollection_rootElement": { "$ref": "#/$defs/Element_derived" }, "ExternalIdentifier": { "if": { "type": "object", "properties": { "type": { "const": "ExternalIdentifier" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/ExternalIdentifier_props" } ] }, "else": { "const": "Not a ExternalIdentifier" } }, "ExternalIdentifier_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ExternalIdentifier" } ] }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ExternalIdentifier_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { "comment": { "$ref": "#/$defs/prop_ExternalIdentifier_comment" }, "externalIdentifierType": { "$ref": "#/$defs/prop_ExternalIdentifier_externalIdentifierType" }, "identifier": { "$ref": "#/$defs/prop_ExternalIdentifier_identifier" }, "identifierLocator": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_ExternalIdentifier_identifierLocator" } } ] }, "issuingAuthority": { "$ref": "#/$defs/prop_ExternalIdentifier_issuingAuthority" } }, "required": [ "externalIdentifierType", "identifier" ] } ] }, "prop_ExternalIdentifier_comment": { "type": "string" }, "prop_ExternalIdentifier_externalIdentifierType": { "enum": [ "cpe22", "cpe23", "cve", "email", "gitoid", "other", "packageUrl", "securityOther", "swhid", "swid", "urlScheme" ] }, "prop_ExternalIdentifier_identifier": { "type": "string" }, "prop_ExternalIdentifier_identifierLocator": { "$ref": "#/$defs/anyURI" }, "prop_ExternalIdentifier_issuingAuthority": { "type": "string" }, "ExternalIdentifierType": { "if": { "type": "object", "properties": { "type": { "const": "ExternalIdentifierType" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/ExternalIdentifierType_props" } ] }, "else": { "const": "Not a ExternalIdentifierType" } }, "ExternalIdentifierType_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ExternalIdentifierType" } ] }, { "const": "spdx:Core/ExternalIdentifierType/cpe22" }, { "const": "spdx:Core/ExternalIdentifierType/cpe23" }, { "const": "spdx:Core/ExternalIdentifierType/cve" }, { "const": "spdx:Core/ExternalIdentifierType/email" }, { "const": "spdx:Core/ExternalIdentifierType/gitoid" }, { "const": "spdx:Core/ExternalIdentifierType/other" }, { "const": "spdx:Core/ExternalIdentifierType/packageUrl" }, { "const": "spdx:Core/ExternalIdentifierType/securityOther" }, { "const": "spdx:Core/ExternalIdentifierType/swhid" }, { "const": "spdx:Core/ExternalIdentifierType/swid" }, { "const": "spdx:Core/ExternalIdentifierType/urlScheme" }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ExternalIdentifierType_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { } } ] }, "ExternalMap": { "if": { "type": "object", "properties": { "type": { "const": "ExternalMap" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/ExternalMap_props" } ] }, "else": { "const": "Not a ExternalMap" } }, "ExternalMap_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ExternalMap" } ] }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ExternalMap_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { "definingArtifact": { "$ref": "#/$defs/prop_ExternalMap_definingArtifact" }, "externalSpdxId": { "$ref": "#/$defs/prop_ExternalMap_externalSpdxId" }, "locationHint": { "$ref": "#/$defs/prop_ExternalMap_locationHint" }, "verifiedUsing": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_ExternalMap_verifiedUsing" } } ] } }, "required": [ "externalSpdxId" ] } ] }, "prop_ExternalMap_definingArtifact": { "$ref": "#/$defs/Artifact_derived" }, "prop_ExternalMap_externalSpdxId": { "$ref": "#/$defs/anyURI" }, "prop_ExternalMap_locationHint": { "$ref": "#/$defs/anyURI" }, "prop_ExternalMap_verifiedUsing": { "$ref": "#/$defs/IntegrityMethod_derived" }, "ExternalRef": { "if": { "type": "object", "properties": { "type": { "const": "ExternalRef" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/ExternalRef_props" } ] }, "else": { "const": "Not a ExternalRef" } }, "ExternalRef_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ExternalRef" } ] }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ExternalRef_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { "comment": { "$ref": "#/$defs/prop_ExternalRef_comment" }, "contentType": { "$ref": "#/$defs/prop_ExternalRef_contentType" }, "externalRefType": { "$ref": "#/$defs/prop_ExternalRef_externalRefType" }, "locator": { "anyOf": [ { "type": "array", "items": { "$ref": "#/$defs/prop_ExternalRef_locator" } } ] } } } ] }, "prop_ExternalRef_comment": { "type": "string" }, "prop_ExternalRef_contentType": { "pattern": "^[^\\/]+\\/[^\\/]+$", "type": "string" }, "prop_ExternalRef_externalRefType": { "enum": [ "altDownloadLocation", "altWebPage", "binaryArtifact", "bower", "buildMeta", "buildSystem", "certificationReport", "chat", "componentAnalysisReport", "cwe", "documentation", "dynamicAnalysisReport", "eolNotice", "exportControlAssessment", "funding", "issueTracker", "license", "mailingList", "mavenCentral", "metrics", "npm", "nuget", "other", "privacyAssessment", "productMetadata", "purchaseOrder", "qualityAssessmentReport", "releaseHistory", "releaseNotes", "riskAssessment", "runtimeAnalysisReport", "secureSoftwareAttestation", "securityAdversaryModel", "securityAdvisory", "securityFix", "securityOther", "securityPenTestReport", "securityPolicy", "securityThreatModel", "socialMedia", "sourceArtifact", "staticAnalysisReport", "support", "vcs", "vulnerabilityDisclosureReport", "vulnerabilityExploitabilityAssessment" ] }, "prop_ExternalRef_locator": { "type": "string" }, "ExternalRefType": { "if": { "type": "object", "properties": { "type": { "const": "ExternalRefType" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/ExternalRefType_props" } ] }, "else": { "const": "Not a ExternalRefType" } }, "ExternalRefType_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/ExternalRefType" } ] }, { "const": "spdx:Core/ExternalRefType/altDownloadLocation" }, { "const": "spdx:Core/ExternalRefType/altWebPage" }, { "const": "spdx:Core/ExternalRefType/binaryArtifact" }, { "const": "spdx:Core/ExternalRefType/bower" }, { "const": "spdx:Core/ExternalRefType/buildMeta" }, { "const": "spdx:Core/ExternalRefType/buildSystem" }, { "const": "spdx:Core/ExternalRefType/certificationReport" }, { "const": "spdx:Core/ExternalRefType/chat" }, { "const": "spdx:Core/ExternalRefType/componentAnalysisReport" }, { "const": "spdx:Core/ExternalRefType/cwe" }, { "const": "spdx:Core/ExternalRefType/documentation" }, { "const": "spdx:Core/ExternalRefType/dynamicAnalysisReport" }, { "const": "spdx:Core/ExternalRefType/eolNotice" }, { "const": "spdx:Core/ExternalRefType/exportControlAssessment" }, { "const": "spdx:Core/ExternalRefType/funding" }, { "const": "spdx:Core/ExternalRefType/issueTracker" }, { "const": "spdx:Core/ExternalRefType/license" }, { "const": "spdx:Core/ExternalRefType/mailingList" }, { "const": "spdx:Core/ExternalRefType/mavenCentral" }, { "const": "spdx:Core/ExternalRefType/metrics" }, { "const": "spdx:Core/ExternalRefType/npm" }, { "const": "spdx:Core/ExternalRefType/nuget" }, { "const": "spdx:Core/ExternalRefType/other" }, { "const": "spdx:Core/ExternalRefType/privacyAssessment" }, { "const": "spdx:Core/ExternalRefType/productMetadata" }, { "const": "spdx:Core/ExternalRefType/purchaseOrder" }, { "const": "spdx:Core/ExternalRefType/qualityAssessmentReport" }, { "const": "spdx:Core/ExternalRefType/releaseHistory" }, { "const": "spdx:Core/ExternalRefType/releaseNotes" }, { "const": "spdx:Core/ExternalRefType/riskAssessment" }, { "const": "spdx:Core/ExternalRefType/runtimeAnalysisReport" }, { "const": "spdx:Core/ExternalRefType/secureSoftwareAttestation" }, { "const": "spdx:Core/ExternalRefType/securityAdversaryModel" }, { "const": "spdx:Core/ExternalRefType/securityAdvisory" }, { "const": "spdx:Core/ExternalRefType/securityFix" }, { "const": "spdx:Core/ExternalRefType/securityOther" }, { "const": "spdx:Core/ExternalRefType/securityPenTestReport" }, { "const": "spdx:Core/ExternalRefType/securityPolicy" }, { "const": "spdx:Core/ExternalRefType/securityThreatModel" }, { "const": "spdx:Core/ExternalRefType/socialMedia" }, { "const": "spdx:Core/ExternalRefType/sourceArtifact" }, { "const": "spdx:Core/ExternalRefType/staticAnalysisReport" }, { "const": "spdx:Core/ExternalRefType/support" }, { "const": "spdx:Core/ExternalRefType/vcs" }, { "const": "spdx:Core/ExternalRefType/vulnerabilityDisclosureReport" }, { "const": "spdx:Core/ExternalRefType/vulnerabilityExploitabilityAssessment" }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "ExternalRefType_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { } } ] }, "HashAlgorithm": { "if": { "type": "object", "properties": { "type": { "const": "HashAlgorithm" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, "type": { "type": "string" } } }, { "$ref": "#/$defs/HashAlgorithm_props" } ] }, "else": { "const": "Not a HashAlgorithm" } }, "HashAlgorithm_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/HashAlgorithm" } ] }, { "const": "spdx:Core/HashAlgorithm/adler32" }, { "const": "spdx:Core/HashAlgorithm/blake2b256" }, { "const": "spdx:Core/HashAlgorithm/blake2b384" }, { "const": "spdx:Core/HashAlgorithm/blake2b512" }, { "const": "spdx:Core/HashAlgorithm/blake3" }, { "const": "spdx:Core/HashAlgorithm/crystalsDilithium" }, { "const": "spdx:Core/HashAlgorithm/crystalsKyber" }, { "const": "spdx:Core/HashAlgorithm/falcon" }, { "const": "spdx:Core/HashAlgorithm/md2" }, { "const": "spdx:Core/HashAlgorithm/md4" }, { "const": "spdx:Core/HashAlgorithm/md5" }, { "const": "spdx:Core/HashAlgorithm/md6" }, { "const": "spdx:Core/HashAlgorithm/other" }, { "const": "spdx:Core/HashAlgorithm/sha1" }, { "const": "spdx:Core/HashAlgorithm/sha224" }, { "const": "spdx:Core/HashAlgorithm/sha256" }, { "const": "spdx:Core/HashAlgorithm/sha384" }, { "const": "spdx:Core/HashAlgorithm/sha3_224" }, { "const": "spdx:Core/HashAlgorithm/sha3_256" }, { "const": "spdx:Core/HashAlgorithm/sha3_384" }, { "const": "spdx:Core/HashAlgorithm/sha3_512" }, { "const": "spdx:Core/HashAlgorithm/sha512" }, { "$ref": "#/$defs/BlankNodeOrIRI" } ] }, "HashAlgorithm_props": { "allOf": [ { "$ref": "#/$defs/SHACLClass" }, { "type": "object", "properties": { } } ] }, "IndividualElement": { "if": { "type": "object", "properties": { "type": { "const": "IndividualElement" } }, "required": ["type"] }, "then": { "allOf": [ { "type": "object", "properties": { "spdxId": { "$ref": "#/$defs/IRI" }, "type": { "type": "string" } }, "required": ["spdxId"] }, { "$ref": "#/$defs/IndividualElement_props" } ] }, "else": { "const": "Not a IndividualElement" } }, "IndividualElement_derived": { "anyOf": [ { "type": "object", "unevaluatedProperties": false, "anyOf": [ { "$ref": "#/$defs/IndividualElement" } ] }, { "const": "NoAssertionElement" }, { "co