security:VulnAssessmentRelationship


URI

https://spdx.org/rdf/3.0.1/terms/Security/VulnAssessmentRelationship

Label

VulnAssessmentRelationship

Description

Abstract ancestor class for all vulnerability assessments

Superclasses (2)

Targets (1)

Node Constraints

value type sh:IRI

Property Constraints (6)

Focus nodes of this shape (security:VulnAssessmentRelationship) can have the following properties:

PROPERTY DESCRIPTION MIN MAX VALUE TYPE OTHER CONSTRAINTS
core:suppliedBy Identifies who or what supplied the artifact or VulnAssessmentRelationship referenced by the Element. 0 1 core:Agent
sh:IRI
rdf:type
sh:message https://spdx.org/rdf/3.0.1/terms/Security/VulnAssessmentRelationship is an abstract class and should not be instantiated directly. Instantiate a subclass instead.
0 *
sh:not sh:hasValue security:VulnAssessmentRelationship
security:assessedElement Specifies an Element contained in a piece of software where a vulnerability was found. 0 1 software:SoftwareArtifact
sh:IRI
security:modifiedTime Specifies a time when a vulnerability assessment was modified 0 1 xsd:dateTimeStamp
sh:Literal
sh:pattern ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\dZ$
security:publishedTime Specifies the time when a vulnerability was published. 0 1 xsd:dateTimeStamp
sh:Literal
sh:pattern ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\dZ$
security:withdrawnTime Specified the time and date when a vulnerability was withdrawn. 0 1 xsd:dateTimeStamp
sh:Literal
sh:pattern ^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\dZ$

Implementation

@prefix core: <https://spdx.org/rdf/3.0.1/terms/Core/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix security: <https://spdx.org/rdf/3.0.1/terms/Security/> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix software: <https://spdx.org/rdf/3.0.1/terms/Software/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

security:VulnAssessmentRelationship a owl:Class,
        sh:NodeShape ;
    rdfs:comment "Abstract ancestor class for all vulnerability assessments"@en ;
    rdfs:subClassOf core:Relationship ;
    sh:nodeKind sh:IRI ;
    sh:property [ sh:datatype xsd:dateTimeStamp ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path security:withdrawnTime ;
            sh:pattern "^\\d\\d\\d\\d-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\dZ$" ],
        [ sh:datatype xsd:dateTimeStamp ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path security:publishedTime ;
            sh:pattern "^\\d\\d\\d\\d-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\dZ$" ],
        [ sh:message "https://spdx.org/rdf/3.0.1/terms/Security/VulnAssessmentRelationship is an abstract class and should not be instantiated directly. Instantiate a subclass instead."@en ;
            sh:not [ sh:hasValue security:VulnAssessmentRelationship ] ;
            sh:path rdf:type ],
        [ sh:class software:SoftwareArtifact ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path security:assessedElement ],
        [ sh:class core:Agent ;
            sh:maxCount 1 ;
            sh:nodeKind sh:IRI ;
            sh:path core:suppliedBy ],
        [ sh:datatype xsd:dateTimeStamp ;
            sh:maxCount 1 ;
            sh:nodeKind sh:Literal ;
            sh:path security:modifiedTime ;
            sh:pattern "^\\d\\d\\d\\d-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\dZ$" ] .