diff --git a/resources/config/config.json b/resources/config/config.json index f565e549..bef5d419 100644 --- a/resources/config/config.json +++ b/resources/config/config.json @@ -67,6 +67,15 @@ "development": "https://github.com/spdx/spdx-spec/blob/development/v2.3.1/schemas/spdx-schema.json", "url": "https://raw.githubusercontent.com/spdx/spdx-spec/development/v2.3.1/schemas/spdx-schema.json", "default": false + }, + { + "version": "SPDX-3.0", + "variant": "development", + "name": "SPDX v3.0.1", + "file": "schema/spdx/3.0.1/spdx-schema.json", + "development": "", + "url": "https://spdx.org/schema/3.0.1/spdx-json-schema.json", + "default": false } ] }, diff --git a/resources/schema/spdx/3.0.1/spdx-schema.json b/resources/schema/spdx/3.0.1/spdx-schema.json new file mode 100644 index 00000000..5a030b48 --- /dev/null +++ b/resources/schema/spdx/3.0.1/spdx-schema.json @@ -0,0 +1,5985 @@ +{ + "$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"], + + "oneOf": [ + { + "type": "object", + "properties": { + "@graph": { + "description": "Top level container for JSON-LD objects", + "type": "array", + "items": { + "type": "object", + "$ref": "#/$defs/AnyClass", + "unevaluatedProperties": false + } + } + }, + "required": ["@graph"] + }, + { "$ref": "#/$defs/AnyClass" } + ], + "unevaluatedProperties": false, + + "$defs": { + "ai_EnergyConsumption": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ai_EnergyConsumption" } + ] + } + } + }, + { "$ref": "#/$defs/ai_EnergyConsumption_props" } + ] + }, + "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": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_EnergyConsumption_ai_finetuningEnergyConsumption" + } + } + ] + }, + "ai_inferenceEnergyConsumption": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_EnergyConsumption_ai_inferenceEnergyConsumption" + } + } + ] + }, + "ai_trainingEnergyConsumption": { + "oneOf": [ + { + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ai_EnergyConsumptionDescription" } + ] + } + } + }, + { "$ref": "#/$defs/ai_EnergyConsumptionDescription_props" } + ] + }, + "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": { + "oneOf": [ + { + "type": "number" + }, + { + "type": "string", + "pattern": "^-?[0-9]+(\\.[0-9]*)?$" + } + ] + }, + "prop_ai_EnergyConsumptionDescription_ai_energyUnit": { + "enum": [ + "kilowattHour", + "megajoule", + "other" + ] + }, + "ai_EnergyUnitType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ai_EnergyUnitType" } + ] + } + } + }, + { "$ref": "#/$defs/ai_EnergyUnitType_props" } + ] + }, + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ai_SafetyRiskAssessmentType" } + ] + } + } + }, + { "$ref": "#/$defs/ai_SafetyRiskAssessmentType_props" } + ] + }, + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "AnnotationType" } + ] + } + } + }, + { "$ref": "#/$defs/AnnotationType_props" } + ] + }, + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "CreationInfo" } + ] + } + } + }, + { "$ref": "#/$defs/CreationInfo_props" } + ] + }, + "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": { + "oneOf": [ + { + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/$defs/prop_CreationInfo_createdBy" + } + } + ] + }, + "createdUsing": { + "oneOf": [ + { + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "DictionaryEntry" } + ] + } + } + }, + { "$ref": "#/$defs/DictionaryEntry_props" } + ] + }, + "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": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_Element_extension" + } + } + ] + }, + "externalIdentifier": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_Element_externalIdentifier" + } + } + ] + }, + "externalRef": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_Element_externalRef" + } + } + ] + }, + "name": { + "$ref": "#/$defs/prop_Element_name" + }, + "summary": { + "$ref": "#/$defs/prop_Element_summary" + }, + "verifiedUsing": { + "oneOf": [ + { + "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_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": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ElementCollection_element" + } + } + ] + }, + "profileConformance": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ElementCollection_profileConformance" + } + } + ] + }, + "rootElement": { + "oneOf": [ + { + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ExternalIdentifier" } + ] + } + } + }, + { "$ref": "#/$defs/ExternalIdentifier_props" } + ] + }, + "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": { + "oneOf": [ + { + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ExternalIdentifierType" } + ] + } + } + }, + { "$ref": "#/$defs/ExternalIdentifierType_props" } + ] + }, + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ExternalMap" } + ] + } + } + }, + { "$ref": "#/$defs/ExternalMap_props" } + ] + }, + "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": { + "oneOf": [ + { + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ExternalRef" } + ] + } + } + }, + { "$ref": "#/$defs/ExternalRef_props" } + ] + }, + "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": { + "oneOf": [ + { + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ExternalRefType" } + ] + } + } + }, + { "$ref": "#/$defs/ExternalRefType_props" } + ] + }, + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "HashAlgorithm" } + ] + } + } + }, + { "$ref": "#/$defs/HashAlgorithm_props" } + ] + }, + "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": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "IndividualElement" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/IndividualElement_props" } + ] + }, + "IndividualElement_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/IndividualElement" } + ] + }, + { "const": "NoAssertionElement" }, + { "const": "NoneElement" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "IndividualElement_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "IntegrityMethod_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/Hash" }, + { "$ref": "#/$defs/PackageVerificationCode" }, + { "$ref": "#/$defs/software_ContentIdentifier" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "IntegrityMethod_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + "comment": { + "$ref": "#/$defs/prop_IntegrityMethod_comment" + } + } + } + ] + }, + "prop_IntegrityMethod_comment": { + "type": "string" + }, + "LifecycleScopeType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "LifecycleScopeType" } + ] + } + } + }, + { "$ref": "#/$defs/LifecycleScopeType_props" } + ] + }, + "LifecycleScopeType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/LifecycleScopeType" } + ] + }, + { "const": "spdx:Core/LifecycleScopeType/build" }, + { "const": "spdx:Core/LifecycleScopeType/design" }, + { "const": "spdx:Core/LifecycleScopeType/development" }, + { "const": "spdx:Core/LifecycleScopeType/other" }, + { "const": "spdx:Core/LifecycleScopeType/runtime" }, + { "const": "spdx:Core/LifecycleScopeType/test" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "LifecycleScopeType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "NamespaceMap": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "NamespaceMap" } + ] + } + } + }, + { "$ref": "#/$defs/NamespaceMap_props" } + ] + }, + "NamespaceMap_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/NamespaceMap" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "NamespaceMap_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + "namespace": { + "$ref": "#/$defs/prop_NamespaceMap_namespace" + }, + "prefix": { + "$ref": "#/$defs/prop_NamespaceMap_prefix" + } + }, + "required": [ + "namespace", + "prefix" + ] + } + ] + }, + "prop_NamespaceMap_namespace": { + "$ref": "#/$defs/anyURI" + }, + "prop_NamespaceMap_prefix": { + "type": "string" + }, + "PackageVerificationCode": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "PackageVerificationCode" } + ] + } + } + }, + { "$ref": "#/$defs/PackageVerificationCode_props" } + ] + }, + "PackageVerificationCode_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/PackageVerificationCode" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "PackageVerificationCode_props": { + "allOf": [ + { "$ref": "#/$defs/IntegrityMethod_props" }, + { + "type": "object", + "properties": { + "algorithm": { + "$ref": "#/$defs/prop_PackageVerificationCode_algorithm" + }, + "hashValue": { + "$ref": "#/$defs/prop_PackageVerificationCode_hashValue" + }, + "packageVerificationCodeExcludedFile": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_PackageVerificationCode_packageVerificationCodeExcludedFile" + } + } + ] + } + }, + "required": [ + "algorithm", + "hashValue" + ] + } + ] + }, + "prop_PackageVerificationCode_algorithm": { + "enum": [ + "adler32", + "blake2b256", + "blake2b384", + "blake2b512", + "blake3", + "crystalsDilithium", + "crystalsKyber", + "falcon", + "md2", + "md4", + "md5", + "md6", + "other", + "sha1", + "sha224", + "sha256", + "sha384", + "sha3_224", + "sha3_256", + "sha3_384", + "sha3_512", + "sha512" + ] + }, + "prop_PackageVerificationCode_hashValue": { + "type": "string" + }, + "prop_PackageVerificationCode_packageVerificationCodeExcludedFile": { + "type": "string" + }, + "PositiveIntegerRange": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "PositiveIntegerRange" } + ] + } + } + }, + { "$ref": "#/$defs/PositiveIntegerRange_props" } + ] + }, + "PositiveIntegerRange_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/PositiveIntegerRange" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "PositiveIntegerRange_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + "beginIntegerRange": { + "$ref": "#/$defs/prop_PositiveIntegerRange_beginIntegerRange" + }, + "endIntegerRange": { + "$ref": "#/$defs/prop_PositiveIntegerRange_endIntegerRange" + } + }, + "required": [ + "beginIntegerRange", + "endIntegerRange" + ] + } + ] + }, + "prop_PositiveIntegerRange_beginIntegerRange": { + "type": "integer", + "minimum": 1 + }, + "prop_PositiveIntegerRange_endIntegerRange": { + "type": "integer", + "minimum": 1 + }, + "PresenceType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "PresenceType" } + ] + } + } + }, + { "$ref": "#/$defs/PresenceType_props" } + ] + }, + "PresenceType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/PresenceType" } + ] + }, + { "const": "spdx:Core/PresenceType/no" }, + { "const": "spdx:Core/PresenceType/noAssertion" }, + { "const": "spdx:Core/PresenceType/yes" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "PresenceType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "ProfileIdentifierType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "ProfileIdentifierType" } + ] + } + } + }, + { "$ref": "#/$defs/ProfileIdentifierType_props" } + ] + }, + "ProfileIdentifierType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/ProfileIdentifierType" } + ] + }, + { "const": "spdx:Core/ProfileIdentifierType/ai" }, + { "const": "spdx:Core/ProfileIdentifierType/build" }, + { "const": "spdx:Core/ProfileIdentifierType/core" }, + { "const": "spdx:Core/ProfileIdentifierType/dataset" }, + { "const": "spdx:Core/ProfileIdentifierType/expandedLicensing" }, + { "const": "spdx:Core/ProfileIdentifierType/extension" }, + { "const": "spdx:Core/ProfileIdentifierType/lite" }, + { "const": "spdx:Core/ProfileIdentifierType/security" }, + { "const": "spdx:Core/ProfileIdentifierType/simpleLicensing" }, + { "const": "spdx:Core/ProfileIdentifierType/software" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "ProfileIdentifierType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "Relationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "Relationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/Relationship_props" } + ] + }, + "Relationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/LifecycleScopedRelationship" }, + { "$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/Relationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Relationship_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + "completeness": { + "$ref": "#/$defs/prop_Relationship_completeness" + }, + "endTime": { + "$ref": "#/$defs/prop_Relationship_endTime" + }, + "from": { + "$ref": "#/$defs/prop_Relationship_from_" + }, + "relationshipType": { + "$ref": "#/$defs/prop_Relationship_relationshipType" + }, + "startTime": { + "$ref": "#/$defs/prop_Relationship_startTime" + }, + "to": { + "oneOf": [ + { + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/$defs/prop_Relationship_to" + } + } + ] + } + }, + "required": [ + "from", + "relationshipType", + "to" + ] + } + ] + }, + "prop_Relationship_completeness": { + "enum": [ + "complete", + "incomplete", + "noAssertion" + ] + }, + "prop_Relationship_endTime": { + "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_Relationship_from_": { + "$ref": "#/$defs/Element_derived" + }, + "prop_Relationship_relationshipType": { + "enum": [ + "affects", + "amendedBy", + "ancestorOf", + "availableFrom", + "configures", + "contains", + "coordinatedBy", + "copiedTo", + "delegatedTo", + "dependsOn", + "descendantOf", + "describes", + "doesNotAffect", + "expandsTo", + "exploitCreatedBy", + "fixedBy", + "fixedIn", + "foundBy", + "generates", + "hasAddedFile", + "hasAssessmentFor", + "hasAssociatedVulnerability", + "hasConcludedLicense", + "hasDataFile", + "hasDeclaredLicense", + "hasDeletedFile", + "hasDependencyManifest", + "hasDistributionArtifact", + "hasDocumentation", + "hasDynamicLink", + "hasEvidence", + "hasExample", + "hasHost", + "hasInput", + "hasMetadata", + "hasOptionalComponent", + "hasOptionalDependency", + "hasOutput", + "hasPrerequisite", + "hasProvidedDependency", + "hasRequirement", + "hasSpecification", + "hasStaticLink", + "hasTest", + "hasTestCase", + "hasVariant", + "invokedBy", + "modifiedBy", + "other", + "packagedBy", + "patchedBy", + "publishedBy", + "reportedBy", + "republishedBy", + "serializedInArtifact", + "testedOn", + "trainedOn", + "underInvestigationFor", + "usesTool" + ] + }, + "prop_Relationship_startTime": { + "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_Relationship_to": { + "$ref": "#/$defs/Element_derived" + }, + "RelationshipCompleteness": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "RelationshipCompleteness" } + ] + } + } + }, + { "$ref": "#/$defs/RelationshipCompleteness_props" } + ] + }, + "RelationshipCompleteness_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/RelationshipCompleteness" } + ] + }, + { "const": "spdx:Core/RelationshipCompleteness/complete" }, + { "const": "spdx:Core/RelationshipCompleteness/incomplete" }, + { "const": "spdx:Core/RelationshipCompleteness/noAssertion" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "RelationshipCompleteness_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "RelationshipType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "RelationshipType" } + ] + } + } + }, + { "$ref": "#/$defs/RelationshipType_props" } + ] + }, + "RelationshipType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/RelationshipType" } + ] + }, + { "const": "spdx:Core/RelationshipType/affects" }, + { "const": "spdx:Core/RelationshipType/amendedBy" }, + { "const": "spdx:Core/RelationshipType/ancestorOf" }, + { "const": "spdx:Core/RelationshipType/availableFrom" }, + { "const": "spdx:Core/RelationshipType/configures" }, + { "const": "spdx:Core/RelationshipType/contains" }, + { "const": "spdx:Core/RelationshipType/coordinatedBy" }, + { "const": "spdx:Core/RelationshipType/copiedTo" }, + { "const": "spdx:Core/RelationshipType/delegatedTo" }, + { "const": "spdx:Core/RelationshipType/dependsOn" }, + { "const": "spdx:Core/RelationshipType/descendantOf" }, + { "const": "spdx:Core/RelationshipType/describes" }, + { "const": "spdx:Core/RelationshipType/doesNotAffect" }, + { "const": "spdx:Core/RelationshipType/expandsTo" }, + { "const": "spdx:Core/RelationshipType/exploitCreatedBy" }, + { "const": "spdx:Core/RelationshipType/fixedBy" }, + { "const": "spdx:Core/RelationshipType/fixedIn" }, + { "const": "spdx:Core/RelationshipType/foundBy" }, + { "const": "spdx:Core/RelationshipType/generates" }, + { "const": "spdx:Core/RelationshipType/hasAddedFile" }, + { "const": "spdx:Core/RelationshipType/hasAssessmentFor" }, + { "const": "spdx:Core/RelationshipType/hasAssociatedVulnerability" }, + { "const": "spdx:Core/RelationshipType/hasConcludedLicense" }, + { "const": "spdx:Core/RelationshipType/hasDataFile" }, + { "const": "spdx:Core/RelationshipType/hasDeclaredLicense" }, + { "const": "spdx:Core/RelationshipType/hasDeletedFile" }, + { "const": "spdx:Core/RelationshipType/hasDependencyManifest" }, + { "const": "spdx:Core/RelationshipType/hasDistributionArtifact" }, + { "const": "spdx:Core/RelationshipType/hasDocumentation" }, + { "const": "spdx:Core/RelationshipType/hasDynamicLink" }, + { "const": "spdx:Core/RelationshipType/hasEvidence" }, + { "const": "spdx:Core/RelationshipType/hasExample" }, + { "const": "spdx:Core/RelationshipType/hasHost" }, + { "const": "spdx:Core/RelationshipType/hasInput" }, + { "const": "spdx:Core/RelationshipType/hasMetadata" }, + { "const": "spdx:Core/RelationshipType/hasOptionalComponent" }, + { "const": "spdx:Core/RelationshipType/hasOptionalDependency" }, + { "const": "spdx:Core/RelationshipType/hasOutput" }, + { "const": "spdx:Core/RelationshipType/hasPrerequisite" }, + { "const": "spdx:Core/RelationshipType/hasProvidedDependency" }, + { "const": "spdx:Core/RelationshipType/hasRequirement" }, + { "const": "spdx:Core/RelationshipType/hasSpecification" }, + { "const": "spdx:Core/RelationshipType/hasStaticLink" }, + { "const": "spdx:Core/RelationshipType/hasTest" }, + { "const": "spdx:Core/RelationshipType/hasTestCase" }, + { "const": "spdx:Core/RelationshipType/hasVariant" }, + { "const": "spdx:Core/RelationshipType/invokedBy" }, + { "const": "spdx:Core/RelationshipType/modifiedBy" }, + { "const": "spdx:Core/RelationshipType/other" }, + { "const": "spdx:Core/RelationshipType/packagedBy" }, + { "const": "spdx:Core/RelationshipType/patchedBy" }, + { "const": "spdx:Core/RelationshipType/publishedBy" }, + { "const": "spdx:Core/RelationshipType/reportedBy" }, + { "const": "spdx:Core/RelationshipType/republishedBy" }, + { "const": "spdx:Core/RelationshipType/serializedInArtifact" }, + { "const": "spdx:Core/RelationshipType/testedOn" }, + { "const": "spdx:Core/RelationshipType/trainedOn" }, + { "const": "spdx:Core/RelationshipType/underInvestigationFor" }, + { "const": "spdx:Core/RelationshipType/usesTool" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "RelationshipType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "SpdxDocument": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "SpdxDocument" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/SpdxDocument_props" } + ] + }, + "SpdxDocument_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/SpdxDocument" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "SpdxDocument_props": { + "allOf": [ + { "$ref": "#/$defs/ElementCollection_props" }, + { + "type": "object", + "properties": { + "dataLicense": { + "$ref": "#/$defs/prop_SpdxDocument_dataLicense" + }, + "import": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_SpdxDocument_import_" + } + } + ] + }, + "namespaceMap": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_SpdxDocument_namespaceMap" + } + } + ] + } + } + } + ] + }, + "prop_SpdxDocument_dataLicense": { + "$ref": "#/$defs/simplelicensing_AnyLicenseInfo_derived" + }, + "prop_SpdxDocument_import_": { + "$ref": "#/$defs/ExternalMap_derived" + }, + "prop_SpdxDocument_namespaceMap": { + "$ref": "#/$defs/NamespaceMap_derived" + }, + "SupportType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "SupportType" } + ] + } + } + }, + { "$ref": "#/$defs/SupportType_props" } + ] + }, + "SupportType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/SupportType" } + ] + }, + { "const": "spdx:Core/SupportType/deployed" }, + { "const": "spdx:Core/SupportType/development" }, + { "const": "spdx:Core/SupportType/endOfSupport" }, + { "const": "spdx:Core/SupportType/limitedSupport" }, + { "const": "spdx:Core/SupportType/noAssertion" }, + { "const": "spdx:Core/SupportType/noSupport" }, + { "const": "spdx:Core/SupportType/support" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "SupportType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "Tool": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "Tool" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/Tool_props" } + ] + }, + "Tool_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/Tool" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Tool_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "dataset_ConfidentialityLevelType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "dataset_ConfidentialityLevelType" } + ] + } + } + }, + { "$ref": "#/$defs/dataset_ConfidentialityLevelType_props" } + ] + }, + "dataset_ConfidentialityLevelType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/dataset_ConfidentialityLevelType" } + ] + }, + { "const": "spdx:Dataset/ConfidentialityLevelType/amber" }, + { "const": "spdx:Dataset/ConfidentialityLevelType/clear" }, + { "const": "spdx:Dataset/ConfidentialityLevelType/green" }, + { "const": "spdx:Dataset/ConfidentialityLevelType/red" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "dataset_ConfidentialityLevelType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "dataset_DatasetAvailabilityType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "dataset_DatasetAvailabilityType" } + ] + } + } + }, + { "$ref": "#/$defs/dataset_DatasetAvailabilityType_props" } + ] + }, + "dataset_DatasetAvailabilityType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/dataset_DatasetAvailabilityType" } + ] + }, + { "const": "spdx:Dataset/DatasetAvailabilityType/clickthrough" }, + { "const": "spdx:Dataset/DatasetAvailabilityType/directDownload" }, + { "const": "spdx:Dataset/DatasetAvailabilityType/query" }, + { "const": "spdx:Dataset/DatasetAvailabilityType/registration" }, + { "const": "spdx:Dataset/DatasetAvailabilityType/scrapingScript" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "dataset_DatasetAvailabilityType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "dataset_DatasetType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "dataset_DatasetType" } + ] + } + } + }, + { "$ref": "#/$defs/dataset_DatasetType_props" } + ] + }, + "dataset_DatasetType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/dataset_DatasetType" } + ] + }, + { "const": "spdx:Dataset/DatasetType/audio" }, + { "const": "spdx:Dataset/DatasetType/categorical" }, + { "const": "spdx:Dataset/DatasetType/graph" }, + { "const": "spdx:Dataset/DatasetType/image" }, + { "const": "spdx:Dataset/DatasetType/noAssertion" }, + { "const": "spdx:Dataset/DatasetType/numeric" }, + { "const": "spdx:Dataset/DatasetType/other" }, + { "const": "spdx:Dataset/DatasetType/sensor" }, + { "const": "spdx:Dataset/DatasetType/structured" }, + { "const": "spdx:Dataset/DatasetType/syntactic" }, + { "const": "spdx:Dataset/DatasetType/text" }, + { "const": "spdx:Dataset/DatasetType/timeseries" }, + { "const": "spdx:Dataset/DatasetType/timestamp" }, + { "const": "spdx:Dataset/DatasetType/video" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "dataset_DatasetType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "expandedlicensing_LicenseAddition_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_CustomLicenseAddition" }, + { "$ref": "#/$defs/expandedlicensing_ListedLicenseException" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_LicenseAddition_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + "expandedlicensing_additionText": { + "$ref": "#/$defs/prop_expandedlicensing_LicenseAddition_expandedlicensing_additionText" + }, + "expandedlicensing_isDeprecatedAdditionId": { + "$ref": "#/$defs/prop_expandedlicensing_LicenseAddition_expandedlicensing_isDeprecatedAdditionId" + }, + "expandedlicensing_licenseXml": { + "$ref": "#/$defs/prop_expandedlicensing_LicenseAddition_expandedlicensing_licenseXml" + }, + "expandedlicensing_obsoletedBy": { + "$ref": "#/$defs/prop_expandedlicensing_LicenseAddition_expandedlicensing_obsoletedBy" + }, + "expandedlicensing_seeAlso": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_expandedlicensing_LicenseAddition_expandedlicensing_seeAlso" + } + } + ] + }, + "expandedlicensing_standardAdditionTemplate": { + "$ref": "#/$defs/prop_expandedlicensing_LicenseAddition_expandedlicensing_standardAdditionTemplate" + } + }, + "required": [ + "expandedlicensing_additionText" + ] + } + ] + }, + "prop_expandedlicensing_LicenseAddition_expandedlicensing_additionText": { + "type": "string" + }, + "prop_expandedlicensing_LicenseAddition_expandedlicensing_isDeprecatedAdditionId": { + "type": "boolean" + }, + "prop_expandedlicensing_LicenseAddition_expandedlicensing_licenseXml": { + "type": "string" + }, + "prop_expandedlicensing_LicenseAddition_expandedlicensing_obsoletedBy": { + "type": "string" + }, + "prop_expandedlicensing_LicenseAddition_expandedlicensing_seeAlso": { + "$ref": "#/$defs/anyURI" + }, + "prop_expandedlicensing_LicenseAddition_expandedlicensing_standardAdditionTemplate": { + "type": "string" + }, + "expandedlicensing_ListedLicenseException": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "expandedlicensing_ListedLicenseException" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/expandedlicensing_ListedLicenseException_props" } + ] + }, + "expandedlicensing_ListedLicenseException_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_ListedLicenseException" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_ListedLicenseException_props": { + "allOf": [ + { "$ref": "#/$defs/expandedlicensing_LicenseAddition_props" }, + { + "type": "object", + "properties": { + "expandedlicensing_deprecatedVersion": { + "$ref": "#/$defs/prop_expandedlicensing_ListedLicenseException_expandedlicensing_deprecatedVersion" + }, + "expandedlicensing_listVersionAdded": { + "$ref": "#/$defs/prop_expandedlicensing_ListedLicenseException_expandedlicensing_listVersionAdded" + } + } + } + ] + }, + "prop_expandedlicensing_ListedLicenseException_expandedlicensing_deprecatedVersion": { + "type": "string" + }, + "prop_expandedlicensing_ListedLicenseException_expandedlicensing_listVersionAdded": { + "type": "string" + }, + "extension_CdxPropertyEntry": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "extension_CdxPropertyEntry" } + ] + } + } + }, + { "$ref": "#/$defs/extension_CdxPropertyEntry_props" } + ] + }, + "extension_CdxPropertyEntry_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/extension_CdxPropertyEntry" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "extension_CdxPropertyEntry_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + "extension_cdxPropName": { + "$ref": "#/$defs/prop_extension_CdxPropertyEntry_extension_cdxPropName" + }, + "extension_cdxPropValue": { + "$ref": "#/$defs/prop_extension_CdxPropertyEntry_extension_cdxPropValue" + } + }, + "required": [ + "extension_cdxPropName" + ] + } + ] + }, + "prop_extension_CdxPropertyEntry_extension_cdxPropName": { + "type": "string" + }, + "prop_extension_CdxPropertyEntry_extension_cdxPropValue": { + "type": "string" + }, + "extension_Extension": { + "allOf": [ + { + "type": "object", + "unevaluatedProperties": true, + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "allOf": [ + { "$ref": "#/$defs/IRI" }, + { "not": { "const": "extension_Extension" } } + ] + } + } + }, + { "$ref": "#/$defs/extension_Extension_props" } + ] + }, + "extension_Extension_derived": { + "anyOf": [ + { + "type": "object", + "anyOf": [ + { "$ref": "#/$defs/extension_CdxPropertiesExtension" }, + { "$ref": "#/$defs/extension_Extension_props" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "extension_Extension_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "security_CvssSeverityType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "security_CvssSeverityType" } + ] + } + } + }, + { "$ref": "#/$defs/security_CvssSeverityType_props" } + ] + }, + "security_CvssSeverityType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_CvssSeverityType" } + ] + }, + { "const": "spdx:Security/CvssSeverityType/critical" }, + { "const": "spdx:Security/CvssSeverityType/high" }, + { "const": "spdx:Security/CvssSeverityType/low" }, + { "const": "spdx:Security/CvssSeverityType/medium" }, + { "const": "spdx:Security/CvssSeverityType/none" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_CvssSeverityType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "security_ExploitCatalogType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "security_ExploitCatalogType" } + ] + } + } + }, + { "$ref": "#/$defs/security_ExploitCatalogType_props" } + ] + }, + "security_ExploitCatalogType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_ExploitCatalogType" } + ] + }, + { "const": "spdx:Security/ExploitCatalogType/kev" }, + { "const": "spdx:Security/ExploitCatalogType/other" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_ExploitCatalogType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "security_SsvcDecisionType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "security_SsvcDecisionType" } + ] + } + } + }, + { "$ref": "#/$defs/security_SsvcDecisionType_props" } + ] + }, + "security_SsvcDecisionType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_SsvcDecisionType" } + ] + }, + { "const": "spdx:Security/SsvcDecisionType/act" }, + { "const": "spdx:Security/SsvcDecisionType/attend" }, + { "const": "spdx:Security/SsvcDecisionType/track" }, + { "const": "spdx:Security/SsvcDecisionType/trackStar" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_SsvcDecisionType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "security_VexJustificationType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "security_VexJustificationType" } + ] + } + } + }, + { "$ref": "#/$defs/security_VexJustificationType_props" } + ] + }, + "security_VexJustificationType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_VexJustificationType" } + ] + }, + { "const": "spdx:Security/VexJustificationType/componentNotPresent" }, + { "const": "spdx:Security/VexJustificationType/inlineMitigationsAlreadyExist" }, + { "const": "spdx:Security/VexJustificationType/vulnerableCodeCannotBeControlledByAdversary" }, + { "const": "spdx:Security/VexJustificationType/vulnerableCodeNotInExecutePath" }, + { "const": "spdx:Security/VexJustificationType/vulnerableCodeNotPresent" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_VexJustificationType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "security_VulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$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/BlankNodeOrIRI" } + ] + }, + "security_VulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/Relationship_props" }, + { + "type": "object", + "properties": { + "suppliedBy": { + "$ref": "#/$defs/prop_security_VulnAssessmentRelationship_suppliedBy" + }, + "security_assessedElement": { + "$ref": "#/$defs/prop_security_VulnAssessmentRelationship_security_assessedElement" + }, + "security_modifiedTime": { + "$ref": "#/$defs/prop_security_VulnAssessmentRelationship_security_modifiedTime" + }, + "security_publishedTime": { + "$ref": "#/$defs/prop_security_VulnAssessmentRelationship_security_publishedTime" + }, + "security_withdrawnTime": { + "$ref": "#/$defs/prop_security_VulnAssessmentRelationship_security_withdrawnTime" + } + } + } + ] + }, + "prop_security_VulnAssessmentRelationship_suppliedBy": { + "$ref": "#/$defs/Agent_derived" + }, + "prop_security_VulnAssessmentRelationship_security_assessedElement": { + "$ref": "#/$defs/software_SoftwareArtifact_derived" + }, + "prop_security_VulnAssessmentRelationship_security_modifiedTime": { + "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_security_VulnAssessmentRelationship_security_publishedTime": { + "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_security_VulnAssessmentRelationship_security_withdrawnTime": { + "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$" + } + ] + }, + "simplelicensing_AnyLicenseInfo_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_ConjunctiveLicenseSet" }, + { "$ref": "#/$defs/expandedlicensing_CustomLicense" }, + { "$ref": "#/$defs/expandedlicensing_DisjunctiveLicenseSet" }, + { "$ref": "#/$defs/expandedlicensing_IndividualLicensingInfo" }, + { "$ref": "#/$defs/expandedlicensing_ListedLicense" }, + { "$ref": "#/$defs/expandedlicensing_OrLaterOperator" }, + { "$ref": "#/$defs/expandedlicensing_WithAdditionOperator" }, + { "$ref": "#/$defs/simplelicensing_LicenseExpression" } + ] + }, + { "const": "expandedlicensing_NoAssertionLicense" }, + { "const": "expandedlicensing_NoneLicense" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "simplelicensing_AnyLicenseInfo_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "simplelicensing_LicenseExpression": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "simplelicensing_LicenseExpression" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/simplelicensing_LicenseExpression_props" } + ] + }, + "simplelicensing_LicenseExpression_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/simplelicensing_LicenseExpression" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "simplelicensing_LicenseExpression_props": { + "allOf": [ + { "$ref": "#/$defs/simplelicensing_AnyLicenseInfo_props" }, + { + "type": "object", + "properties": { + "simplelicensing_customIdToUri": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_simplelicensing_LicenseExpression_simplelicensing_customIdToUri" + } + } + ] + }, + "simplelicensing_licenseExpression": { + "$ref": "#/$defs/prop_simplelicensing_LicenseExpression_simplelicensing_licenseExpression" + }, + "simplelicensing_licenseListVersion": { + "$ref": "#/$defs/prop_simplelicensing_LicenseExpression_simplelicensing_licenseListVersion" + } + }, + "required": [ + "simplelicensing_licenseExpression" + ] + } + ] + }, + "prop_simplelicensing_LicenseExpression_simplelicensing_customIdToUri": { + "$ref": "#/$defs/DictionaryEntry_derived" + }, + "prop_simplelicensing_LicenseExpression_simplelicensing_licenseExpression": { + "type": "string" + }, + "prop_simplelicensing_LicenseExpression_simplelicensing_licenseListVersion": { + "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" + }, + "simplelicensing_SimpleLicensingText": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "simplelicensing_SimpleLicensingText" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/simplelicensing_SimpleLicensingText_props" } + ] + }, + "simplelicensing_SimpleLicensingText_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/simplelicensing_SimpleLicensingText" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "simplelicensing_SimpleLicensingText_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + "simplelicensing_licenseText": { + "$ref": "#/$defs/prop_simplelicensing_SimpleLicensingText_simplelicensing_licenseText" + } + }, + "required": [ + "simplelicensing_licenseText" + ] + } + ] + }, + "prop_simplelicensing_SimpleLicensingText_simplelicensing_licenseText": { + "type": "string" + }, + "software_ContentIdentifier": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "software_ContentIdentifier" } + ] + } + } + }, + { "$ref": "#/$defs/software_ContentIdentifier_props" } + ] + }, + "software_ContentIdentifier_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/software_ContentIdentifier" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_ContentIdentifier_props": { + "allOf": [ + { "$ref": "#/$defs/IntegrityMethod_props" }, + { + "type": "object", + "properties": { + "software_contentIdentifierType": { + "$ref": "#/$defs/prop_software_ContentIdentifier_software_contentIdentifierType" + }, + "software_contentIdentifierValue": { + "$ref": "#/$defs/prop_software_ContentIdentifier_software_contentIdentifierValue" + } + }, + "required": [ + "software_contentIdentifierType", + "software_contentIdentifierValue" + ] + } + ] + }, + "prop_software_ContentIdentifier_software_contentIdentifierType": { + "enum": [ + "gitoid", + "swhid" + ] + }, + "prop_software_ContentIdentifier_software_contentIdentifierValue": { + "$ref": "#/$defs/anyURI" + }, + "software_ContentIdentifierType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "software_ContentIdentifierType" } + ] + } + } + }, + { "$ref": "#/$defs/software_ContentIdentifierType_props" } + ] + }, + "software_ContentIdentifierType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/software_ContentIdentifierType" } + ] + }, + { "const": "spdx:Software/ContentIdentifierType/gitoid" }, + { "const": "spdx:Software/ContentIdentifierType/swhid" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_ContentIdentifierType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "software_FileKindType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "software_FileKindType" } + ] + } + } + }, + { "$ref": "#/$defs/software_FileKindType_props" } + ] + }, + "software_FileKindType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/software_FileKindType" } + ] + }, + { "const": "spdx:Software/FileKindType/directory" }, + { "const": "spdx:Software/FileKindType/file" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_FileKindType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "software_SbomType": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "software_SbomType" } + ] + } + } + }, + { "$ref": "#/$defs/software_SbomType_props" } + ] + }, + "software_SbomType_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/software_SbomType" } + ] + }, + { "const": "spdx:Software/SbomType/analyzed" }, + { "const": "spdx:Software/SbomType/build" }, + { "const": "spdx:Software/SbomType/deployed" }, + { "const": "spdx:Software/SbomType/design" }, + { "const": "spdx:Software/SbomType/runtime" }, + { "const": "spdx:Software/SbomType/source" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_SbomType_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "software_SoftwarePurpose": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "software_SoftwarePurpose" } + ] + } + } + }, + { "$ref": "#/$defs/software_SoftwarePurpose_props" } + ] + }, + "software_SoftwarePurpose_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/software_SoftwarePurpose" } + ] + }, + { "const": "spdx:Software/SoftwarePurpose/application" }, + { "const": "spdx:Software/SoftwarePurpose/archive" }, + { "const": "spdx:Software/SoftwarePurpose/bom" }, + { "const": "spdx:Software/SoftwarePurpose/configuration" }, + { "const": "spdx:Software/SoftwarePurpose/container" }, + { "const": "spdx:Software/SoftwarePurpose/data" }, + { "const": "spdx:Software/SoftwarePurpose/device" }, + { "const": "spdx:Software/SoftwarePurpose/deviceDriver" }, + { "const": "spdx:Software/SoftwarePurpose/diskImage" }, + { "const": "spdx:Software/SoftwarePurpose/documentation" }, + { "const": "spdx:Software/SoftwarePurpose/evidence" }, + { "const": "spdx:Software/SoftwarePurpose/executable" }, + { "const": "spdx:Software/SoftwarePurpose/file" }, + { "const": "spdx:Software/SoftwarePurpose/filesystemImage" }, + { "const": "spdx:Software/SoftwarePurpose/firmware" }, + { "const": "spdx:Software/SoftwarePurpose/framework" }, + { "const": "spdx:Software/SoftwarePurpose/install" }, + { "const": "spdx:Software/SoftwarePurpose/library" }, + { "const": "spdx:Software/SoftwarePurpose/manifest" }, + { "const": "spdx:Software/SoftwarePurpose/model" }, + { "const": "spdx:Software/SoftwarePurpose/module" }, + { "const": "spdx:Software/SoftwarePurpose/operatingSystem" }, + { "const": "spdx:Software/SoftwarePurpose/other" }, + { "const": "spdx:Software/SoftwarePurpose/patch" }, + { "const": "spdx:Software/SoftwarePurpose/platform" }, + { "const": "spdx:Software/SoftwarePurpose/requirement" }, + { "const": "spdx:Software/SoftwarePurpose/source" }, + { "const": "spdx:Software/SoftwarePurpose/specification" }, + { "const": "spdx:Software/SoftwarePurpose/test" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_SoftwarePurpose_props": { + "allOf": [ + { "$ref": "#/$defs/SHACLClass" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "build_Build": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "build_Build" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/build_Build_props" } + ] + }, + "build_Build_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/build_Build" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "build_Build_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + "build_buildEndTime": { + "$ref": "#/$defs/prop_build_Build_build_buildEndTime" + }, + "build_buildId": { + "$ref": "#/$defs/prop_build_Build_build_buildId" + }, + "build_buildStartTime": { + "$ref": "#/$defs/prop_build_Build_build_buildStartTime" + }, + "build_buildType": { + "$ref": "#/$defs/prop_build_Build_build_buildType" + }, + "build_configSourceDigest": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_build_Build_build_configSourceDigest" + } + } + ] + }, + "build_configSourceEntrypoint": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_build_Build_build_configSourceEntrypoint" + } + } + ] + }, + "build_configSourceUri": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_build_Build_build_configSourceUri" + } + } + ] + }, + "build_environment": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_build_Build_build_environment" + } + } + ] + }, + "build_parameter": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_build_Build_build_parameter" + } + } + ] + } + }, + "required": [ + "build_buildType" + ] + } + ] + }, + "prop_build_Build_build_buildEndTime": { + "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_build_Build_build_buildId": { + "type": "string" + }, + "prop_build_Build_build_buildStartTime": { + "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_build_Build_build_buildType": { + "$ref": "#/$defs/anyURI" + }, + "prop_build_Build_build_configSourceDigest": { + "$ref": "#/$defs/Hash_derived" + }, + "prop_build_Build_build_configSourceEntrypoint": { + "type": "string" + }, + "prop_build_Build_build_configSourceUri": { + "$ref": "#/$defs/anyURI" + }, + "prop_build_Build_build_environment": { + "$ref": "#/$defs/DictionaryEntry_derived" + }, + "prop_build_Build_build_parameter": { + "$ref": "#/$defs/DictionaryEntry_derived" + }, + "Agent": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "Agent" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/Agent_props" } + ] + }, + "Agent_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/Organization" }, + { "$ref": "#/$defs/Person" }, + { "$ref": "#/$defs/SoftwareAgent" }, + { "$ref": "#/$defs/Agent" } + ] + }, + { "const": "SpdxOrganization" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Agent_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "Annotation": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "Annotation" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/Annotation_props" } + ] + }, + "Annotation_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/Annotation" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Annotation_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + "annotationType": { + "$ref": "#/$defs/prop_Annotation_annotationType" + }, + "contentType": { + "$ref": "#/$defs/prop_Annotation_contentType" + }, + "statement": { + "$ref": "#/$defs/prop_Annotation_statement" + }, + "subject": { + "$ref": "#/$defs/prop_Annotation_subject" + } + }, + "required": [ + "annotationType", + "subject" + ] + } + ] + }, + "prop_Annotation_annotationType": { + "enum": [ + "other", + "review" + ] + }, + "prop_Annotation_contentType": { + "pattern": "^[^\\/]+\\/[^\\/]+$", + "type": "string" + }, + "prop_Annotation_statement": { + "type": "string" + }, + "prop_Annotation_subject": { + "$ref": "#/$defs/Element_derived" + }, + "Artifact_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/ai_AIPackage" }, + { "$ref": "#/$defs/dataset_DatasetPackage" }, + { "$ref": "#/$defs/security_Vulnerability" }, + { "$ref": "#/$defs/software_File" }, + { "$ref": "#/$defs/software_Package" }, + { "$ref": "#/$defs/software_Snippet" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Artifact_props": { + "allOf": [ + { "$ref": "#/$defs/Element_props" }, + { + "type": "object", + "properties": { + "builtTime": { + "$ref": "#/$defs/prop_Artifact_builtTime" + }, + "originatedBy": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_Artifact_originatedBy" + } + } + ] + }, + "releaseTime": { + "$ref": "#/$defs/prop_Artifact_releaseTime" + }, + "standardName": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_Artifact_standardName" + } + } + ] + }, + "suppliedBy": { + "$ref": "#/$defs/prop_Artifact_suppliedBy" + }, + "supportLevel": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_Artifact_supportLevel" + } + } + ] + }, + "validUntilTime": { + "$ref": "#/$defs/prop_Artifact_validUntilTime" + } + } + } + ] + }, + "prop_Artifact_builtTime": { + "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_Artifact_originatedBy": { + "$ref": "#/$defs/Agent_derived" + }, + "prop_Artifact_releaseTime": { + "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_Artifact_standardName": { + "type": "string" + }, + "prop_Artifact_suppliedBy": { + "$ref": "#/$defs/Agent_derived" + }, + "prop_Artifact_supportLevel": { + "enum": [ + "deployed", + "development", + "endOfSupport", + "limitedSupport", + "noAssertion", + "noSupport", + "support" + ] + }, + "prop_Artifact_validUntilTime": { + "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$" + } + ] + }, + "Bundle": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "Bundle" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/Bundle_props" } + ] + }, + "Bundle_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/Bom" }, + { "$ref": "#/$defs/software_Sbom" }, + { "$ref": "#/$defs/Bundle" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Bundle_props": { + "allOf": [ + { "$ref": "#/$defs/ElementCollection_props" }, + { + "type": "object", + "properties": { + "context": { + "$ref": "#/$defs/prop_Bundle_context" + } + } + } + ] + }, + "prop_Bundle_context": { + "type": "string" + }, + "Hash": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "Hash" } + ] + } + } + }, + { "$ref": "#/$defs/Hash_props" } + ] + }, + "Hash_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/Hash" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Hash_props": { + "allOf": [ + { "$ref": "#/$defs/IntegrityMethod_props" }, + { + "type": "object", + "properties": { + "algorithm": { + "$ref": "#/$defs/prop_Hash_algorithm" + }, + "hashValue": { + "$ref": "#/$defs/prop_Hash_hashValue" + } + }, + "required": [ + "algorithm", + "hashValue" + ] + } + ] + }, + "prop_Hash_algorithm": { + "enum": [ + "adler32", + "blake2b256", + "blake2b384", + "blake2b512", + "blake3", + "crystalsDilithium", + "crystalsKyber", + "falcon", + "md2", + "md4", + "md5", + "md6", + "other", + "sha1", + "sha224", + "sha256", + "sha384", + "sha3_224", + "sha3_256", + "sha3_384", + "sha3_512", + "sha512" + ] + }, + "prop_Hash_hashValue": { + "type": "string" + }, + "LifecycleScopedRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "LifecycleScopedRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/LifecycleScopedRelationship_props" } + ] + }, + "LifecycleScopedRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/LifecycleScopedRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "LifecycleScopedRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/Relationship_props" }, + { + "type": "object", + "properties": { + "scope": { + "$ref": "#/$defs/prop_LifecycleScopedRelationship_scope" + } + } + } + ] + }, + "prop_LifecycleScopedRelationship_scope": { + "enum": [ + "build", + "design", + "development", + "other", + "runtime", + "test" + ] + }, + "Organization": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "Organization" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/Organization_props" } + ] + }, + "Organization_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/Organization" } + ] + }, + { "const": "SpdxOrganization" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Organization_props": { + "allOf": [ + { "$ref": "#/$defs/Agent_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "Person": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "Person" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/Person_props" } + ] + }, + "Person_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/Person" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Person_props": { + "allOf": [ + { "$ref": "#/$defs/Agent_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "SoftwareAgent": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "SoftwareAgent" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/SoftwareAgent_props" } + ] + }, + "SoftwareAgent_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/SoftwareAgent" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "SoftwareAgent_props": { + "allOf": [ + { "$ref": "#/$defs/Agent_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "expandedlicensing_ConjunctiveLicenseSet": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "expandedlicensing_ConjunctiveLicenseSet" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/expandedlicensing_ConjunctiveLicenseSet_props" } + ] + }, + "expandedlicensing_ConjunctiveLicenseSet_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_ConjunctiveLicenseSet" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_ConjunctiveLicenseSet_props": { + "allOf": [ + { "$ref": "#/$defs/simplelicensing_AnyLicenseInfo_props" }, + { + "type": "object", + "properties": { + "expandedlicensing_member": { + "oneOf": [ + { + "type": "array", + "minItems": 2, + "items": { + "$ref": "#/$defs/prop_expandedlicensing_ConjunctiveLicenseSet_expandedlicensing_member" + } + } + ] + } + }, + "required": [ + "expandedlicensing_member" + ] + } + ] + }, + "prop_expandedlicensing_ConjunctiveLicenseSet_expandedlicensing_member": { + "$ref": "#/$defs/simplelicensing_AnyLicenseInfo_derived" + }, + "expandedlicensing_CustomLicenseAddition": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "expandedlicensing_CustomLicenseAddition" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/expandedlicensing_CustomLicenseAddition_props" } + ] + }, + "expandedlicensing_CustomLicenseAddition_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_CustomLicenseAddition" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_CustomLicenseAddition_props": { + "allOf": [ + { "$ref": "#/$defs/expandedlicensing_LicenseAddition_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "expandedlicensing_DisjunctiveLicenseSet": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "expandedlicensing_DisjunctiveLicenseSet" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/expandedlicensing_DisjunctiveLicenseSet_props" } + ] + }, + "expandedlicensing_DisjunctiveLicenseSet_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_DisjunctiveLicenseSet" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_DisjunctiveLicenseSet_props": { + "allOf": [ + { "$ref": "#/$defs/simplelicensing_AnyLicenseInfo_props" }, + { + "type": "object", + "properties": { + "expandedlicensing_member": { + "oneOf": [ + { + "type": "array", + "minItems": 2, + "items": { + "$ref": "#/$defs/prop_expandedlicensing_DisjunctiveLicenseSet_expandedlicensing_member" + } + } + ] + } + }, + "required": [ + "expandedlicensing_member" + ] + } + ] + }, + "prop_expandedlicensing_DisjunctiveLicenseSet_expandedlicensing_member": { + "$ref": "#/$defs/simplelicensing_AnyLicenseInfo_derived" + }, + "expandedlicensing_ExtendableLicense_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_CustomLicense" }, + { "$ref": "#/$defs/expandedlicensing_ListedLicense" }, + { "$ref": "#/$defs/expandedlicensing_OrLaterOperator" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_ExtendableLicense_props": { + "allOf": [ + { "$ref": "#/$defs/simplelicensing_AnyLicenseInfo_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "expandedlicensing_IndividualLicensingInfo": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "expandedlicensing_IndividualLicensingInfo" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/expandedlicensing_IndividualLicensingInfo_props" } + ] + }, + "expandedlicensing_IndividualLicensingInfo_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_IndividualLicensingInfo" } + ] + }, + { "const": "expandedlicensing_NoAssertionLicense" }, + { "const": "expandedlicensing_NoneLicense" }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_IndividualLicensingInfo_props": { + "allOf": [ + { "$ref": "#/$defs/simplelicensing_AnyLicenseInfo_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "expandedlicensing_License_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_CustomLicense" }, + { "$ref": "#/$defs/expandedlicensing_ListedLicense" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_License_props": { + "allOf": [ + { "$ref": "#/$defs/expandedlicensing_ExtendableLicense_props" }, + { + "type": "object", + "properties": { + "expandedlicensing_isDeprecatedLicenseId": { + "$ref": "#/$defs/prop_expandedlicensing_License_expandedlicensing_isDeprecatedLicenseId" + }, + "expandedlicensing_isFsfLibre": { + "$ref": "#/$defs/prop_expandedlicensing_License_expandedlicensing_isFsfLibre" + }, + "expandedlicensing_isOsiApproved": { + "$ref": "#/$defs/prop_expandedlicensing_License_expandedlicensing_isOsiApproved" + }, + "expandedlicensing_licenseXml": { + "$ref": "#/$defs/prop_expandedlicensing_License_expandedlicensing_licenseXml" + }, + "expandedlicensing_obsoletedBy": { + "$ref": "#/$defs/prop_expandedlicensing_License_expandedlicensing_obsoletedBy" + }, + "expandedlicensing_seeAlso": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_expandedlicensing_License_expandedlicensing_seeAlso" + } + } + ] + }, + "expandedlicensing_standardLicenseHeader": { + "$ref": "#/$defs/prop_expandedlicensing_License_expandedlicensing_standardLicenseHeader" + }, + "expandedlicensing_standardLicenseTemplate": { + "$ref": "#/$defs/prop_expandedlicensing_License_expandedlicensing_standardLicenseTemplate" + }, + "simplelicensing_licenseText": { + "$ref": "#/$defs/prop_expandedlicensing_License_simplelicensing_licenseText" + } + }, + "required": [ + "simplelicensing_licenseText" + ] + } + ] + }, + "prop_expandedlicensing_License_expandedlicensing_isDeprecatedLicenseId": { + "type": "boolean" + }, + "prop_expandedlicensing_License_expandedlicensing_isFsfLibre": { + "type": "boolean" + }, + "prop_expandedlicensing_License_expandedlicensing_isOsiApproved": { + "type": "boolean" + }, + "prop_expandedlicensing_License_expandedlicensing_licenseXml": { + "type": "string" + }, + "prop_expandedlicensing_License_expandedlicensing_obsoletedBy": { + "type": "string" + }, + "prop_expandedlicensing_License_expandedlicensing_seeAlso": { + "$ref": "#/$defs/anyURI" + }, + "prop_expandedlicensing_License_expandedlicensing_standardLicenseHeader": { + "type": "string" + }, + "prop_expandedlicensing_License_expandedlicensing_standardLicenseTemplate": { + "type": "string" + }, + "prop_expandedlicensing_License_simplelicensing_licenseText": { + "type": "string" + }, + "expandedlicensing_ListedLicense": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "expandedlicensing_ListedLicense" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/expandedlicensing_ListedLicense_props" } + ] + }, + "expandedlicensing_ListedLicense_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_ListedLicense" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_ListedLicense_props": { + "allOf": [ + { "$ref": "#/$defs/expandedlicensing_License_props" }, + { + "type": "object", + "properties": { + "expandedlicensing_deprecatedVersion": { + "$ref": "#/$defs/prop_expandedlicensing_ListedLicense_expandedlicensing_deprecatedVersion" + }, + "expandedlicensing_listVersionAdded": { + "$ref": "#/$defs/prop_expandedlicensing_ListedLicense_expandedlicensing_listVersionAdded" + } + } + } + ] + }, + "prop_expandedlicensing_ListedLicense_expandedlicensing_deprecatedVersion": { + "type": "string" + }, + "prop_expandedlicensing_ListedLicense_expandedlicensing_listVersionAdded": { + "type": "string" + }, + "expandedlicensing_OrLaterOperator": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "expandedlicensing_OrLaterOperator" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/expandedlicensing_OrLaterOperator_props" } + ] + }, + "expandedlicensing_OrLaterOperator_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_OrLaterOperator" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_OrLaterOperator_props": { + "allOf": [ + { "$ref": "#/$defs/expandedlicensing_ExtendableLicense_props" }, + { + "type": "object", + "properties": { + "expandedlicensing_subjectLicense": { + "$ref": "#/$defs/prop_expandedlicensing_OrLaterOperator_expandedlicensing_subjectLicense" + } + }, + "required": [ + "expandedlicensing_subjectLicense" + ] + } + ] + }, + "prop_expandedlicensing_OrLaterOperator_expandedlicensing_subjectLicense": { + "$ref": "#/$defs/expandedlicensing_License_derived" + }, + "expandedlicensing_WithAdditionOperator": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "expandedlicensing_WithAdditionOperator" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/expandedlicensing_WithAdditionOperator_props" } + ] + }, + "expandedlicensing_WithAdditionOperator_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_WithAdditionOperator" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_WithAdditionOperator_props": { + "allOf": [ + { "$ref": "#/$defs/simplelicensing_AnyLicenseInfo_props" }, + { + "type": "object", + "properties": { + "expandedlicensing_subjectAddition": { + "$ref": "#/$defs/prop_expandedlicensing_WithAdditionOperator_expandedlicensing_subjectAddition" + }, + "expandedlicensing_subjectExtendableLicense": { + "$ref": "#/$defs/prop_expandedlicensing_WithAdditionOperator_expandedlicensing_subjectExtendableLicense" + } + }, + "required": [ + "expandedlicensing_subjectAddition", + "expandedlicensing_subjectExtendableLicense" + ] + } + ] + }, + "prop_expandedlicensing_WithAdditionOperator_expandedlicensing_subjectAddition": { + "$ref": "#/$defs/expandedlicensing_LicenseAddition_derived" + }, + "prop_expandedlicensing_WithAdditionOperator_expandedlicensing_subjectExtendableLicense": { + "$ref": "#/$defs/expandedlicensing_ExtendableLicense_derived" + }, + "extension_CdxPropertiesExtension": { + "allOf": [ + { + "type": "object", + "properties": { + "@id": { "$ref": "#/$defs/BlankNodeOrIRI" }, + "type": { + "oneOf": [ + { "const": "extension_CdxPropertiesExtension" } + ] + } + } + }, + { "$ref": "#/$defs/extension_CdxPropertiesExtension_props" } + ] + }, + "extension_CdxPropertiesExtension_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/extension_CdxPropertiesExtension" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "extension_CdxPropertiesExtension_props": { + "allOf": [ + { "$ref": "#/$defs/extension_Extension_props" }, + { + "type": "object", + "properties": { + "extension_cdxProperty": { + "oneOf": [ + { + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/$defs/prop_extension_CdxPropertiesExtension_extension_cdxProperty" + } + } + ] + } + }, + "required": [ + "extension_cdxProperty" + ] + } + ] + }, + "prop_extension_CdxPropertiesExtension_extension_cdxProperty": { + "$ref": "#/$defs/extension_CdxPropertyEntry_derived" + }, + "security_CvssV2VulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_CvssV2VulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_CvssV2VulnAssessmentRelationship_props" } + ] + }, + "security_CvssV2VulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_CvssV2VulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_CvssV2VulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + "security_score": { + "$ref": "#/$defs/prop_security_CvssV2VulnAssessmentRelationship_security_score" + }, + "security_vectorString": { + "$ref": "#/$defs/prop_security_CvssV2VulnAssessmentRelationship_security_vectorString" + } + }, + "required": [ + "security_score", + "security_vectorString" + ] + } + ] + }, + "prop_security_CvssV2VulnAssessmentRelationship_security_score": { + "oneOf": [ + { + "type": "number" + }, + { + "type": "string", + "pattern": "^-?[0-9]+(\\.[0-9]*)?$" + } + ] + }, + "prop_security_CvssV2VulnAssessmentRelationship_security_vectorString": { + "type": "string" + }, + "security_CvssV3VulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_CvssV3VulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_CvssV3VulnAssessmentRelationship_props" } + ] + }, + "security_CvssV3VulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_CvssV3VulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_CvssV3VulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + "security_score": { + "$ref": "#/$defs/prop_security_CvssV3VulnAssessmentRelationship_security_score" + }, + "security_severity": { + "$ref": "#/$defs/prop_security_CvssV3VulnAssessmentRelationship_security_severity" + }, + "security_vectorString": { + "$ref": "#/$defs/prop_security_CvssV3VulnAssessmentRelationship_security_vectorString" + } + }, + "required": [ + "security_score", + "security_severity", + "security_vectorString" + ] + } + ] + }, + "prop_security_CvssV3VulnAssessmentRelationship_security_score": { + "oneOf": [ + { + "type": "number" + }, + { + "type": "string", + "pattern": "^-?[0-9]+(\\.[0-9]*)?$" + } + ] + }, + "prop_security_CvssV3VulnAssessmentRelationship_security_severity": { + "enum": [ + "critical", + "high", + "low", + "medium", + "none" + ] + }, + "prop_security_CvssV3VulnAssessmentRelationship_security_vectorString": { + "type": "string" + }, + "security_CvssV4VulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_CvssV4VulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_CvssV4VulnAssessmentRelationship_props" } + ] + }, + "security_CvssV4VulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_CvssV4VulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_CvssV4VulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + "security_score": { + "$ref": "#/$defs/prop_security_CvssV4VulnAssessmentRelationship_security_score" + }, + "security_severity": { + "$ref": "#/$defs/prop_security_CvssV4VulnAssessmentRelationship_security_severity" + }, + "security_vectorString": { + "$ref": "#/$defs/prop_security_CvssV4VulnAssessmentRelationship_security_vectorString" + } + }, + "required": [ + "security_score", + "security_severity", + "security_vectorString" + ] + } + ] + }, + "prop_security_CvssV4VulnAssessmentRelationship_security_score": { + "oneOf": [ + { + "type": "number" + }, + { + "type": "string", + "pattern": "^-?[0-9]+(\\.[0-9]*)?$" + } + ] + }, + "prop_security_CvssV4VulnAssessmentRelationship_security_severity": { + "enum": [ + "critical", + "high", + "low", + "medium", + "none" + ] + }, + "prop_security_CvssV4VulnAssessmentRelationship_security_vectorString": { + "type": "string" + }, + "security_EpssVulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_EpssVulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_EpssVulnAssessmentRelationship_props" } + ] + }, + "security_EpssVulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_EpssVulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_EpssVulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + "security_percentile": { + "$ref": "#/$defs/prop_security_EpssVulnAssessmentRelationship_security_percentile" + }, + "security_probability": { + "$ref": "#/$defs/prop_security_EpssVulnAssessmentRelationship_security_probability" + } + }, + "required": [ + "security_percentile", + "security_probability" + ] + } + ] + }, + "prop_security_EpssVulnAssessmentRelationship_security_percentile": { + "oneOf": [ + { + "type": "number" + }, + { + "type": "string", + "pattern": "^-?[0-9]+(\\.[0-9]*)?$" + } + ] + }, + "prop_security_EpssVulnAssessmentRelationship_security_probability": { + "oneOf": [ + { + "type": "number" + }, + { + "type": "string", + "pattern": "^-?[0-9]+(\\.[0-9]*)?$" + } + ] + }, + "security_ExploitCatalogVulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_ExploitCatalogVulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_ExploitCatalogVulnAssessmentRelationship_props" } + ] + }, + "security_ExploitCatalogVulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_ExploitCatalogVulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_ExploitCatalogVulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + "security_catalogType": { + "$ref": "#/$defs/prop_security_ExploitCatalogVulnAssessmentRelationship_security_catalogType" + }, + "security_exploited": { + "$ref": "#/$defs/prop_security_ExploitCatalogVulnAssessmentRelationship_security_exploited" + }, + "security_locator": { + "$ref": "#/$defs/prop_security_ExploitCatalogVulnAssessmentRelationship_security_locator" + } + }, + "required": [ + "security_catalogType", + "security_exploited", + "security_locator" + ] + } + ] + }, + "prop_security_ExploitCatalogVulnAssessmentRelationship_security_catalogType": { + "enum": [ + "kev", + "other" + ] + }, + "prop_security_ExploitCatalogVulnAssessmentRelationship_security_exploited": { + "type": "boolean" + }, + "prop_security_ExploitCatalogVulnAssessmentRelationship_security_locator": { + "$ref": "#/$defs/anyURI" + }, + "security_SsvcVulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_SsvcVulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_SsvcVulnAssessmentRelationship_props" } + ] + }, + "security_SsvcVulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_SsvcVulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_SsvcVulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + "security_decisionType": { + "$ref": "#/$defs/prop_security_SsvcVulnAssessmentRelationship_security_decisionType" + } + }, + "required": [ + "security_decisionType" + ] + } + ] + }, + "prop_security_SsvcVulnAssessmentRelationship_security_decisionType": { + "enum": [ + "act", + "attend", + "track", + "trackStar" + ] + }, + "security_VexVulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_VexAffectedVulnAssessmentRelationship" }, + { "$ref": "#/$defs/security_VexFixedVulnAssessmentRelationship" }, + { "$ref": "#/$defs/security_VexNotAffectedVulnAssessmentRelationship" }, + { "$ref": "#/$defs/security_VexUnderInvestigationVulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_VexVulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + "security_statusNotes": { + "$ref": "#/$defs/prop_security_VexVulnAssessmentRelationship_security_statusNotes" + }, + "security_vexVersion": { + "$ref": "#/$defs/prop_security_VexVulnAssessmentRelationship_security_vexVersion" + } + } + } + ] + }, + "prop_security_VexVulnAssessmentRelationship_security_statusNotes": { + "type": "string" + }, + "prop_security_VexVulnAssessmentRelationship_security_vexVersion": { + "type": "string" + }, + "security_Vulnerability": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_Vulnerability" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_Vulnerability_props" } + ] + }, + "security_Vulnerability_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_Vulnerability" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_Vulnerability_props": { + "allOf": [ + { "$ref": "#/$defs/Artifact_props" }, + { + "type": "object", + "properties": { + "security_modifiedTime": { + "$ref": "#/$defs/prop_security_Vulnerability_security_modifiedTime" + }, + "security_publishedTime": { + "$ref": "#/$defs/prop_security_Vulnerability_security_publishedTime" + }, + "security_withdrawnTime": { + "$ref": "#/$defs/prop_security_Vulnerability_security_withdrawnTime" + } + } + } + ] + }, + "prop_security_Vulnerability_security_modifiedTime": { + "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_security_Vulnerability_security_publishedTime": { + "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_security_Vulnerability_security_withdrawnTime": { + "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$" + } + ] + }, + "software_SoftwareArtifact_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/ai_AIPackage" }, + { "$ref": "#/$defs/dataset_DatasetPackage" }, + { "$ref": "#/$defs/software_File" }, + { "$ref": "#/$defs/software_Package" }, + { "$ref": "#/$defs/software_Snippet" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_SoftwareArtifact_props": { + "allOf": [ + { "$ref": "#/$defs/Artifact_props" }, + { + "type": "object", + "properties": { + "software_additionalPurpose": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_software_SoftwareArtifact_software_additionalPurpose" + } + } + ] + }, + "software_attributionText": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_software_SoftwareArtifact_software_attributionText" + } + } + ] + }, + "software_contentIdentifier": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_software_SoftwareArtifact_software_contentIdentifier" + } + } + ] + }, + "software_copyrightText": { + "$ref": "#/$defs/prop_software_SoftwareArtifact_software_copyrightText" + }, + "software_primaryPurpose": { + "$ref": "#/$defs/prop_software_SoftwareArtifact_software_primaryPurpose" + } + } + } + ] + }, + "prop_software_SoftwareArtifact_software_additionalPurpose": { + "enum": [ + "application", + "archive", + "bom", + "configuration", + "container", + "data", + "device", + "deviceDriver", + "diskImage", + "documentation", + "evidence", + "executable", + "file", + "filesystemImage", + "firmware", + "framework", + "install", + "library", + "manifest", + "model", + "module", + "operatingSystem", + "other", + "patch", + "platform", + "requirement", + "source", + "specification", + "test" + ] + }, + "prop_software_SoftwareArtifact_software_attributionText": { + "type": "string" + }, + "prop_software_SoftwareArtifact_software_contentIdentifier": { + "$ref": "#/$defs/software_ContentIdentifier_derived" + }, + "prop_software_SoftwareArtifact_software_copyrightText": { + "type": "string" + }, + "prop_software_SoftwareArtifact_software_primaryPurpose": { + "enum": [ + "application", + "archive", + "bom", + "configuration", + "container", + "data", + "device", + "deviceDriver", + "diskImage", + "documentation", + "evidence", + "executable", + "file", + "filesystemImage", + "firmware", + "framework", + "install", + "library", + "manifest", + "model", + "module", + "operatingSystem", + "other", + "patch", + "platform", + "requirement", + "source", + "specification", + "test" + ] + }, + "Bom": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "Bom" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/Bom_props" } + ] + }, + "Bom_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/software_Sbom" }, + { "$ref": "#/$defs/Bom" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "Bom_props": { + "allOf": [ + { "$ref": "#/$defs/Bundle_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "expandedlicensing_CustomLicense": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "expandedlicensing_CustomLicense" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/expandedlicensing_CustomLicense_props" } + ] + }, + "expandedlicensing_CustomLicense_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/expandedlicensing_CustomLicense" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "expandedlicensing_CustomLicense_props": { + "allOf": [ + { "$ref": "#/$defs/expandedlicensing_License_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "security_VexAffectedVulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_VexAffectedVulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_VexAffectedVulnAssessmentRelationship_props" } + ] + }, + "security_VexAffectedVulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_VexAffectedVulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_VexAffectedVulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VexVulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + "security_actionStatement": { + "$ref": "#/$defs/prop_security_VexAffectedVulnAssessmentRelationship_security_actionStatement" + }, + "security_actionStatementTime": { + "$ref": "#/$defs/prop_security_VexAffectedVulnAssessmentRelationship_security_actionStatementTime" + } + }, + "required": [ + "security_actionStatement" + ] + } + ] + }, + "prop_security_VexAffectedVulnAssessmentRelationship_security_actionStatement": { + "type": "string" + }, + "prop_security_VexAffectedVulnAssessmentRelationship_security_actionStatementTime": { + "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$" + } + ] + }, + "security_VexFixedVulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_VexFixedVulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_VexFixedVulnAssessmentRelationship_props" } + ] + }, + "security_VexFixedVulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_VexFixedVulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_VexFixedVulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VexVulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "security_VexNotAffectedVulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_VexNotAffectedVulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_VexNotAffectedVulnAssessmentRelationship_props" } + ] + }, + "security_VexNotAffectedVulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_VexNotAffectedVulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_VexNotAffectedVulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VexVulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + "security_impactStatement": { + "$ref": "#/$defs/prop_security_VexNotAffectedVulnAssessmentRelationship_security_impactStatement" + }, + "security_impactStatementTime": { + "$ref": "#/$defs/prop_security_VexNotAffectedVulnAssessmentRelationship_security_impactStatementTime" + }, + "security_justificationType": { + "$ref": "#/$defs/prop_security_VexNotAffectedVulnAssessmentRelationship_security_justificationType" + } + } + } + ] + }, + "prop_security_VexNotAffectedVulnAssessmentRelationship_security_impactStatement": { + "type": "string" + }, + "prop_security_VexNotAffectedVulnAssessmentRelationship_security_impactStatementTime": { + "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_security_VexNotAffectedVulnAssessmentRelationship_security_justificationType": { + "enum": [ + "componentNotPresent", + "inlineMitigationsAlreadyExist", + "vulnerableCodeCannotBeControlledByAdversary", + "vulnerableCodeNotInExecutePath", + "vulnerableCodeNotPresent" + ] + }, + "security_VexUnderInvestigationVulnAssessmentRelationship": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "security_VexUnderInvestigationVulnAssessmentRelationship" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/security_VexUnderInvestigationVulnAssessmentRelationship_props" } + ] + }, + "security_VexUnderInvestigationVulnAssessmentRelationship_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/security_VexUnderInvestigationVulnAssessmentRelationship" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "security_VexUnderInvestigationVulnAssessmentRelationship_props": { + "allOf": [ + { "$ref": "#/$defs/security_VexVulnAssessmentRelationship_props" }, + { + "type": "object", + "properties": { + } + } + ] + }, + "software_File": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "software_File" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/software_File_props" } + ] + }, + "software_File_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/software_File" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_File_props": { + "allOf": [ + { "$ref": "#/$defs/software_SoftwareArtifact_props" }, + { + "type": "object", + "properties": { + "contentType": { + "$ref": "#/$defs/prop_software_File_contentType" + }, + "software_fileKind": { + "$ref": "#/$defs/prop_software_File_software_fileKind" + } + } + } + ] + }, + "prop_software_File_contentType": { + "pattern": "^[^\\/]+\\/[^\\/]+$", + "type": "string" + }, + "prop_software_File_software_fileKind": { + "enum": [ + "directory", + "file" + ] + }, + "software_Package": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "software_Package" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/software_Package_props" } + ] + }, + "software_Package_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/ai_AIPackage" }, + { "$ref": "#/$defs/dataset_DatasetPackage" }, + { "$ref": "#/$defs/software_Package" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_Package_props": { + "allOf": [ + { "$ref": "#/$defs/software_SoftwareArtifact_props" }, + { + "type": "object", + "properties": { + "software_downloadLocation": { + "$ref": "#/$defs/prop_software_Package_software_downloadLocation" + }, + "software_homePage": { + "$ref": "#/$defs/prop_software_Package_software_homePage" + }, + "software_packageUrl": { + "$ref": "#/$defs/prop_software_Package_software_packageUrl" + }, + "software_packageVersion": { + "$ref": "#/$defs/prop_software_Package_software_packageVersion" + }, + "software_sourceInfo": { + "$ref": "#/$defs/prop_software_Package_software_sourceInfo" + } + } + } + ] + }, + "prop_software_Package_software_downloadLocation": { + "$ref": "#/$defs/anyURI" + }, + "prop_software_Package_software_homePage": { + "$ref": "#/$defs/anyURI" + }, + "prop_software_Package_software_packageUrl": { + "$ref": "#/$defs/anyURI" + }, + "prop_software_Package_software_packageVersion": { + "type": "string" + }, + "prop_software_Package_software_sourceInfo": { + "type": "string" + }, + "software_Sbom": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "software_Sbom" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/software_Sbom_props" } + ] + }, + "software_Sbom_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/software_Sbom" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_Sbom_props": { + "allOf": [ + { "$ref": "#/$defs/Bom_props" }, + { + "type": "object", + "properties": { + "software_sbomType": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_software_Sbom_software_sbomType" + } + } + ] + } + } + } + ] + }, + "prop_software_Sbom_software_sbomType": { + "enum": [ + "analyzed", + "build", + "deployed", + "design", + "runtime", + "source" + ] + }, + "software_Snippet": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "software_Snippet" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/software_Snippet_props" } + ] + }, + "software_Snippet_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/software_Snippet" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "software_Snippet_props": { + "allOf": [ + { "$ref": "#/$defs/software_SoftwareArtifact_props" }, + { + "type": "object", + "properties": { + "software_byteRange": { + "$ref": "#/$defs/prop_software_Snippet_software_byteRange" + }, + "software_lineRange": { + "$ref": "#/$defs/prop_software_Snippet_software_lineRange" + }, + "software_snippetFromFile": { + "$ref": "#/$defs/prop_software_Snippet_software_snippetFromFile" + } + }, + "required": [ + "software_snippetFromFile" + ] + } + ] + }, + "prop_software_Snippet_software_byteRange": { + "$ref": "#/$defs/PositiveIntegerRange_derived" + }, + "prop_software_Snippet_software_lineRange": { + "$ref": "#/$defs/PositiveIntegerRange_derived" + }, + "prop_software_Snippet_software_snippetFromFile": { + "$ref": "#/$defs/software_File_derived" + }, + "ai_AIPackage": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "ai_AIPackage" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/ai_AIPackage_props" } + ] + }, + "ai_AIPackage_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/ai_AIPackage" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "ai_AIPackage_props": { + "allOf": [ + { "$ref": "#/$defs/software_Package_props" }, + { + "type": "object", + "properties": { + "ai_autonomyType": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_autonomyType" + }, + "ai_domain": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_domain" + } + } + ] + }, + "ai_energyConsumption": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_energyConsumption" + }, + "ai_hyperparameter": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_hyperparameter" + } + } + ] + }, + "ai_informationAboutApplication": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_informationAboutApplication" + }, + "ai_informationAboutTraining": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_informationAboutTraining" + }, + "ai_limitation": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_limitation" + }, + "ai_metric": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_metric" + } + } + ] + }, + "ai_metricDecisionThreshold": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_metricDecisionThreshold" + } + } + ] + }, + "ai_modelDataPreprocessing": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_modelDataPreprocessing" + } + } + ] + }, + "ai_modelExplainability": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_modelExplainability" + } + } + ] + }, + "ai_safetyRiskAssessment": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_safetyRiskAssessment" + }, + "ai_standardCompliance": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_standardCompliance" + } + } + ] + }, + "ai_typeOfModel": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_typeOfModel" + } + } + ] + }, + "ai_useSensitivePersonalInformation": { + "$ref": "#/$defs/prop_ai_AIPackage_ai_useSensitivePersonalInformation" + } + } + } + ] + }, + "prop_ai_AIPackage_ai_autonomyType": { + "enum": [ + "no", + "noAssertion", + "yes" + ] + }, + "prop_ai_AIPackage_ai_domain": { + "type": "string" + }, + "prop_ai_AIPackage_ai_energyConsumption": { + "$ref": "#/$defs/ai_EnergyConsumption_derived" + }, + "prop_ai_AIPackage_ai_hyperparameter": { + "$ref": "#/$defs/DictionaryEntry_derived" + }, + "prop_ai_AIPackage_ai_informationAboutApplication": { + "type": "string" + }, + "prop_ai_AIPackage_ai_informationAboutTraining": { + "type": "string" + }, + "prop_ai_AIPackage_ai_limitation": { + "type": "string" + }, + "prop_ai_AIPackage_ai_metric": { + "$ref": "#/$defs/DictionaryEntry_derived" + }, + "prop_ai_AIPackage_ai_metricDecisionThreshold": { + "$ref": "#/$defs/DictionaryEntry_derived" + }, + "prop_ai_AIPackage_ai_modelDataPreprocessing": { + "type": "string" + }, + "prop_ai_AIPackage_ai_modelExplainability": { + "type": "string" + }, + "prop_ai_AIPackage_ai_safetyRiskAssessment": { + "enum": [ + "high", + "low", + "medium", + "serious" + ] + }, + "prop_ai_AIPackage_ai_standardCompliance": { + "type": "string" + }, + "prop_ai_AIPackage_ai_typeOfModel": { + "type": "string" + }, + "prop_ai_AIPackage_ai_useSensitivePersonalInformation": { + "enum": [ + "no", + "noAssertion", + "yes" + ] + }, + "dataset_DatasetPackage": { + "allOf": [ + { + "type": "object", + "properties": { + "spdxId": { "$ref": "#/$defs/IRI" }, + "type": { + "oneOf": [ + { "const": "dataset_DatasetPackage" } + ] + } + }, + "required": ["spdxId"] + }, + { "$ref": "#/$defs/dataset_DatasetPackage_props" } + ] + }, + "dataset_DatasetPackage_derived": { + "anyOf": [ + { + "type": "object", + "unevaluatedProperties": false, + "anyOf": [ + { "$ref": "#/$defs/dataset_DatasetPackage" } + ] + }, + { "$ref": "#/$defs/BlankNodeOrIRI" } + ] + }, + "dataset_DatasetPackage_props": { + "allOf": [ + { "$ref": "#/$defs/software_Package_props" }, + { + "type": "object", + "properties": { + "dataset_anonymizationMethodUsed": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_anonymizationMethodUsed" + } + } + ] + }, + "dataset_confidentialityLevel": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_confidentialityLevel" + }, + "dataset_dataCollectionProcess": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_dataCollectionProcess" + }, + "dataset_dataPreprocessing": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_dataPreprocessing" + } + } + ] + }, + "dataset_datasetAvailability": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_datasetAvailability" + }, + "dataset_datasetNoise": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_datasetNoise" + }, + "dataset_datasetSize": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_datasetSize" + }, + "dataset_datasetType": { + "oneOf": [ + { + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_datasetType" + } + } + ] + }, + "dataset_datasetUpdateMechanism": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_datasetUpdateMechanism" + }, + "dataset_hasSensitivePersonalInformation": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_hasSensitivePersonalInformation" + }, + "dataset_intendedUse": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_intendedUse" + }, + "dataset_knownBias": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_knownBias" + } + } + ] + }, + "dataset_sensor": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/$defs/prop_dataset_DatasetPackage_dataset_sensor" + } + } + ] + } + }, + "required": [ + "dataset_datasetType" + ] + } + ] + }, + "prop_dataset_DatasetPackage_dataset_anonymizationMethodUsed": { + "type": "string" + }, + "prop_dataset_DatasetPackage_dataset_confidentialityLevel": { + "enum": [ + "amber", + "clear", + "green", + "red" + ] + }, + "prop_dataset_DatasetPackage_dataset_dataCollectionProcess": { + "type": "string" + }, + "prop_dataset_DatasetPackage_dataset_dataPreprocessing": { + "type": "string" + }, + "prop_dataset_DatasetPackage_dataset_datasetAvailability": { + "enum": [ + "clickthrough", + "directDownload", + "query", + "registration", + "scrapingScript" + ] + }, + "prop_dataset_DatasetPackage_dataset_datasetNoise": { + "type": "string" + }, + "prop_dataset_DatasetPackage_dataset_datasetSize": { + "type": "integer", + "minimum": 0 + }, + "prop_dataset_DatasetPackage_dataset_datasetType": { + "enum": [ + "audio", + "categorical", + "graph", + "image", + "noAssertion", + "numeric", + "other", + "sensor", + "structured", + "syntactic", + "text", + "timeseries", + "timestamp", + "video" + ] + }, + "prop_dataset_DatasetPackage_dataset_datasetUpdateMechanism": { + "type": "string" + }, + "prop_dataset_DatasetPackage_dataset_hasSensitivePersonalInformation": { + "enum": [ + "no", + "noAssertion", + "yes" + ] + }, + "prop_dataset_DatasetPackage_dataset_intendedUse": { + "type": "string" + }, + "prop_dataset_DatasetPackage_dataset_knownBias": { + "type": "string" + }, + "prop_dataset_DatasetPackage_dataset_sensor": { + "$ref": "#/$defs/DictionaryEntry_derived" + }, + "IRI": { + "type": "string", + "pattern": "^(?!_:).+:.+" + }, + "BlankNode": { + "type": "string", + "pattern": "^_:.+" + }, + "BlankNodeOrIRI": { + "oneOf": [ + { "$ref": "#/$defs/IRI" }, + { "$ref": "#/$defs/BlankNode" } + ] + }, + "anyURI": { + "type": "string" + }, + "SHACLClass": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { "$ref": "#/$defs/IRI" }, + { + "enum": [ + "ai_EnergyConsumption", + "ai_EnergyConsumptionDescription", + "ai_EnergyUnitType", + "ai_SafetyRiskAssessmentType", + "AnnotationType", + "CreationInfo", + "DictionaryEntry", + "ExternalIdentifier", + "ExternalIdentifierType", + "ExternalMap", + "ExternalRef", + "ExternalRefType", + "HashAlgorithm", + "IndividualElement", + "LifecycleScopeType", + "NamespaceMap", + "PackageVerificationCode", + "PositiveIntegerRange", + "PresenceType", + "ProfileIdentifierType", + "Relationship", + "RelationshipCompleteness", + "RelationshipType", + "SpdxDocument", + "SupportType", + "Tool", + "dataset_ConfidentialityLevelType", + "dataset_DatasetAvailabilityType", + "dataset_DatasetType", + "expandedlicensing_ListedLicenseException", + "extension_CdxPropertyEntry", + "security_CvssSeverityType", + "security_ExploitCatalogType", + "security_SsvcDecisionType", + "security_VexJustificationType", + "simplelicensing_LicenseExpression", + "simplelicensing_SimpleLicensingText", + "software_ContentIdentifier", + "software_ContentIdentifierType", + "software_FileKindType", + "software_SbomType", + "software_SoftwarePurpose", + "build_Build", + "Agent", + "Annotation", + "Bundle", + "Hash", + "LifecycleScopedRelationship", + "Organization", + "Person", + "SoftwareAgent", + "expandedlicensing_ConjunctiveLicenseSet", + "expandedlicensing_CustomLicenseAddition", + "expandedlicensing_DisjunctiveLicenseSet", + "expandedlicensing_IndividualLicensingInfo", + "expandedlicensing_ListedLicense", + "expandedlicensing_OrLaterOperator", + "expandedlicensing_WithAdditionOperator", + "extension_CdxPropertiesExtension", + "security_CvssV2VulnAssessmentRelationship", + "security_CvssV3VulnAssessmentRelationship", + "security_CvssV4VulnAssessmentRelationship", + "security_EpssVulnAssessmentRelationship", + "security_ExploitCatalogVulnAssessmentRelationship", + "security_SsvcVulnAssessmentRelationship", + "security_Vulnerability", + "Bom", + "expandedlicensing_CustomLicense", + "security_VexAffectedVulnAssessmentRelationship", + "security_VexFixedVulnAssessmentRelationship", + "security_VexNotAffectedVulnAssessmentRelationship", + "security_VexUnderInvestigationVulnAssessmentRelationship", + "software_File", + "software_Package", + "software_Sbom", + "software_Snippet", + "ai_AIPackage", + "dataset_DatasetPackage" + ] + } + ] + } + }, + "required": ["type"] + }, + "AnyClass": { + "anyOf": [ + { "$ref": "#/$defs/ai_EnergyConsumption" }, + { "$ref": "#/$defs/ai_EnergyConsumptionDescription" }, + { "$ref": "#/$defs/ai_EnergyUnitType" }, + { "$ref": "#/$defs/ai_SafetyRiskAssessmentType" }, + { "$ref": "#/$defs/AnnotationType" }, + { "$ref": "#/$defs/CreationInfo" }, + { "$ref": "#/$defs/DictionaryEntry" }, + { "$ref": "#/$defs/ExternalIdentifier" }, + { "$ref": "#/$defs/ExternalIdentifierType" }, + { "$ref": "#/$defs/ExternalMap" }, + { "$ref": "#/$defs/ExternalRef" }, + { "$ref": "#/$defs/ExternalRefType" }, + { "$ref": "#/$defs/HashAlgorithm" }, + { "$ref": "#/$defs/IndividualElement" }, + { "$ref": "#/$defs/LifecycleScopeType" }, + { "$ref": "#/$defs/NamespaceMap" }, + { "$ref": "#/$defs/PackageVerificationCode" }, + { "$ref": "#/$defs/PositiveIntegerRange" }, + { "$ref": "#/$defs/PresenceType" }, + { "$ref": "#/$defs/ProfileIdentifierType" }, + { "$ref": "#/$defs/Relationship" }, + { "$ref": "#/$defs/RelationshipCompleteness" }, + { "$ref": "#/$defs/RelationshipType" }, + { "$ref": "#/$defs/SpdxDocument" }, + { "$ref": "#/$defs/SupportType" }, + { "$ref": "#/$defs/Tool" }, + { "$ref": "#/$defs/dataset_ConfidentialityLevelType" }, + { "$ref": "#/$defs/dataset_DatasetAvailabilityType" }, + { "$ref": "#/$defs/dataset_DatasetType" }, + { "$ref": "#/$defs/expandedlicensing_ListedLicenseException" }, + { "$ref": "#/$defs/extension_CdxPropertyEntry" }, + { "$ref": "#/$defs/security_CvssSeverityType" }, + { "$ref": "#/$defs/security_ExploitCatalogType" }, + { "$ref": "#/$defs/security_SsvcDecisionType" }, + { "$ref": "#/$defs/security_VexJustificationType" }, + { "$ref": "#/$defs/simplelicensing_LicenseExpression" }, + { "$ref": "#/$defs/simplelicensing_SimpleLicensingText" }, + { "$ref": "#/$defs/software_ContentIdentifier" }, + { "$ref": "#/$defs/software_ContentIdentifierType" }, + { "$ref": "#/$defs/software_FileKindType" }, + { "$ref": "#/$defs/software_SbomType" }, + { "$ref": "#/$defs/software_SoftwarePurpose" }, + { "$ref": "#/$defs/build_Build" }, + { "$ref": "#/$defs/Agent" }, + { "$ref": "#/$defs/Annotation" }, + { "$ref": "#/$defs/Bundle" }, + { "$ref": "#/$defs/Hash" }, + { "$ref": "#/$defs/LifecycleScopedRelationship" }, + { "$ref": "#/$defs/Organization" }, + { "$ref": "#/$defs/Person" }, + { "$ref": "#/$defs/SoftwareAgent" }, + { "$ref": "#/$defs/expandedlicensing_ConjunctiveLicenseSet" }, + { "$ref": "#/$defs/expandedlicensing_CustomLicenseAddition" }, + { "$ref": "#/$defs/expandedlicensing_DisjunctiveLicenseSet" }, + { "$ref": "#/$defs/expandedlicensing_IndividualLicensingInfo" }, + { "$ref": "#/$defs/expandedlicensing_ListedLicense" }, + { "$ref": "#/$defs/expandedlicensing_OrLaterOperator" }, + { "$ref": "#/$defs/expandedlicensing_WithAdditionOperator" }, + { "$ref": "#/$defs/extension_CdxPropertiesExtension" }, + { "$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_Vulnerability" }, + { "$ref": "#/$defs/Bom" }, + { "$ref": "#/$defs/expandedlicensing_CustomLicense" }, + { "$ref": "#/$defs/security_VexAffectedVulnAssessmentRelationship" }, + { "$ref": "#/$defs/security_VexFixedVulnAssessmentRelationship" }, + { "$ref": "#/$defs/security_VexNotAffectedVulnAssessmentRelationship" }, + { "$ref": "#/$defs/security_VexUnderInvestigationVulnAssessmentRelationship" }, + { "$ref": "#/$defs/software_File" }, + { "$ref": "#/$defs/software_Package" }, + { "$ref": "#/$defs/software_Sbom" }, + { "$ref": "#/$defs/software_Snippet" }, + { "$ref": "#/$defs/ai_AIPackage" }, + { "$ref": "#/$defs/dataset_DatasetPackage" } + ] + } + } +}