spdx_tools.spdx.validation.annotation_validator
1# SPDX-FileCopyrightText: 2022 spdx contributors 2# 3# SPDX-License-Identifier: Apache-2.0 4 5from beartype.typing import List 6 7from spdx_tools.spdx.model import Annotation, Document 8from spdx_tools.spdx.validation.actor_validator import validate_actor 9from spdx_tools.spdx.validation.spdx_id_validators import validate_spdx_id 10from spdx_tools.spdx.validation.validation_message import SpdxElementType, ValidationContext, ValidationMessage 11 12 13def validate_annotations(annotations: List[Annotation], document: Document) -> List[ValidationMessage]: 14 validation_messages = [] 15 for annotation in annotations: 16 validation_messages.extend(validate_annotation(annotation, document)) 17 18 return validation_messages 19 20 21def validate_annotation(annotation: Annotation, document: Document) -> List[ValidationMessage]: 22 validation_messages = [] 23 context = ValidationContext(element_type=SpdxElementType.ANNOTATION, full_element=annotation) 24 25 validation_messages.extend(validate_actor(annotation.annotator, "annotation")) 26 27 messages: List[str] = validate_spdx_id(annotation.spdx_id, document, check_document=True) 28 for message in messages: 29 validation_messages.append(ValidationMessage(message, context)) 30 31 return validation_messages
def
validate_annotations( annotations: list[spdx_tools.spdx.model.annotation.Annotation], document: spdx_tools.spdx.model.document.Document) -> list[spdx_tools.spdx.validation.validation_message.ValidationMessage]:
def
validate_annotation( annotation: spdx_tools.spdx.model.annotation.Annotation, document: spdx_tools.spdx.model.document.Document) -> list[spdx_tools.spdx.validation.validation_message.ValidationMessage]:
22def validate_annotation(annotation: Annotation, document: Document) -> List[ValidationMessage]: 23 validation_messages = [] 24 context = ValidationContext(element_type=SpdxElementType.ANNOTATION, full_element=annotation) 25 26 validation_messages.extend(validate_actor(annotation.annotator, "annotation")) 27 28 messages: List[str] = validate_spdx_id(annotation.spdx_id, document, check_document=True) 29 for message in messages: 30 validation_messages.append(ValidationMessage(message, context)) 31 32 return validation_messages