Skip to content

Class constraint for Extension class is no longer generated #207

Description

@goneall

With the current generation of the extension property constraints, I'm having difficulty determining the type from the model file.

In the 3.0.1 version of the model.ttl file, the following is generated for the Extension class:

[ sh:class <https://spdx.org/rdf/3.0.1/terms/Extension/Extension> ;
            sh:nodeKind sh:BlankNodeOrIRI ;
            sh:path ns1:extension ],

This allowed me to determine the type as Extension.

For the 3.1 model, the class constraint was changed to a not condition, but the Extension constraint was removed.

Can we put back the Extension type as an additional constraint?

Here's the 3.1 generated constraint:

[ sh:message "Class is known to not derive from Extension and cannot be used"@en ;
            sh:not [ sh:or ( [ sh:class ns2:RequirementVerification ] [ sh:class ns2:EvidenceRelationship ] [ sh:class ns2:EvaluationResult ] [ sh:class ns4:SsvcVulnAssessmentRelationship ] [ sh:class ns4:CvssV2VulnAssessmentRelationship ] [ sh:class ns4:ExploitCatalogVulnAssessmentRelationship ] [ sh:class ns4:CvssV4VulnAssessmentRelationship ] [ sh:class ns4:VexAffectedVulnAssessmentRelationship ] [ sh:class ns4:VexNotAffectedVulnAssessmentRelationship ] [ sh:class ns4:CvssV3VulnAssessmentRelationship ] [ sh:class ns4:Vulnerability ] [ sh:class ns4:VexUnderInvestigationVulnAssessmentRelationship ] [ sh:class ns4:EpssVulnAssessmentRelationship ] [ sh:class ns4:VexFixedVulnAssessmentRelationship ] [ sh:class ns1:NamespaceMap ] [ sh:class ns1:LifecycleScopedRelationship ] [ sh:class ns1:ElementMap ] [ sh:class ns1:SupportRelationship ] [ sh:class ns1:Hash ] [ sh:class ns1:Agent ] [ sh:class ns1:MeasureOfLength ] [ sh:class ns1:CreationInfo ] [ sh:class ns1:ContactPointRelationship ] [ sh:class ns1:ExternalRef ] [ sh:class ns1:Specification ] [ sh:class ns1:Bom ] [ sh:class ns1:IndividualElement ] [ sh:class ns1:Relationship ] [ sh:class ns1:UnitOfMeasure ] [ sh:class ns1:PositiveIntegerRange ] [ sh:class ns1:DictionaryEntry ] [ sh:class ns1:ExternalMap ] [ sh:class ns1:Annotation ] [ sh:class ns1:DefinedType ] [ sh:class ns1:SpdxDocument ] [ sh:class ns1:Person ] [ sh:class ns1:Organization ] [ sh:class ns1:MeasureOfMass ] [ sh:class ns1:Bundle ] [ sh:class ns1:Tool ] [ sh:class ns1:Requirement ] [ sh:class ns1:ExternalIdentifier ] [ sh:class ns1:SoftwareAgent ] [ sh:class ns1:PackageVerificationCode ] [ sh:class ns1:PhysicalLocation ] [ sh:class ns1:Regulation ] [ sh:class ns5:AIPackage ] [ sh:class ns5:EnergyConsumptionDescription ] [ sh:class ns5:EnergyConsumption ] [ sh:class <https://spdx.org/rdf/3.1/terms/Build/Build> ] [ sh:class ns3:DatasetPackage ] [ sh:class ns9:CustomLicense ] [ sh:class ns9:OrLaterOperator ] [ sh:class ns9:ListedLicense ] [ sh:class ns9:DisjunctiveLicenseSet ] [ sh:class ns9:ListedLicenseException ] [ sh:class ns9:WithAdditionOperator ] [ sh:class ns9:IndividualLicensingInfo ] [ sh:class ns9:CustomLicenseAddition ] [ sh:class ns9:ConjunctiveLicenseSet ] [ sh:class <https://spdx.org/rdf/3.1/terms/SimpleLicensing/LicenseExpression> ] [ sh:class <https://spdx.org/rdf/3.1/terms/SimpleLicensing/SimpleLicensingText> ] [ sh:class <https://spdx.org/rdf/3.1/terms/Extension/CdxPropertyEntry> ] [ sh:class <https://spdx.org/rdf/3.1/terms/Operations/Project> ] [ sh:class <https://spdx.org/rdf/3.1/terms/Operations/ExportControlClassificationAssessment> ] [ sh:class <https://spdx.org/rdf/3.1/terms/Operations/ExportControlClassification> ] [ sh:class ns7:StateAction ] [ sh:class ns7:State ] [ sh:class ns7:AssemblyAction ] [ sh:class ns7:BoundaryDefinitionProcess ] [ sh:class ns7:DestroyProcess ] [ sh:class ns7:ResponsibilityChangeAction ] [ sh:class ns7:PlanAction ] [ sh:class ns7:DestroyAction ] [ sh:class ns7:ChangeAction ] [ sh:class ns7:TransportProcess ] [ sh:class ns7:ResolutionAction ] [ sh:class ns7:TestProcess ] [ sh:class ns7:DefinedStateProcess ] [ sh:class ns7:StorageProcess ] [ sh:class ns7:StorageAction ] [ sh:class ns7:PlanProcess ] [ sh:class ns7:ReproduceAction ] [ sh:class ns7:ReproduceProcess ] [ sh:class ns7:BoundaryCrossingAction ] [ sh:class ns7:InspectionProcess ] [ sh:class ns7:InstantiateVirtualHardwareProcess ] [ sh:class ns7:AssemblyProcess ] [ sh:class ns7:ManufactureProcess ] [ sh:class ns7:BoundaryDefinitionAction ] [ sh:class ns7:OutOfSpecAction ] [ sh:class ns7:ResponsibilityChangeProcess ] [ sh:class ns7:HarvestProcess ] [ sh:class ns7:InspectionAction ] [ sh:class ns7:ChangeProcess ] [ sh:class ns7:ManufactureAction ] [ sh:class ns7:TransportAction ] [ sh:class ns7:HarvestAction ] [ sh:class ns7:TestAction ] [ sh:class ns8:SoftwareService ] [ sh:class ns6:Package ] [ sh:class ns6:File ] [ sh:class ns6:Sbom ] [ sh:class ns6:Snippet ] [ sh:class ns6:ContentIdentifier ] [ sh:class ns10:VirtualHardware ] [ sh:class ns10:Dimensions ] [ sh:class ns10:ProductSpecification ] [ sh:class ns10:PhysicalHardware ] [ sh:class ns10:BulkHardware ] ) ] ;
            sh:path ns1:extension ],

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions