def METHOD_NAME(self, external_document_ref_dict: Dict) -> ExternalDocumentRef:
    logger = Logger()
    checksum: Optional[Checksum] = parse_field_or_log_error(
        logger, external_document_ref_dict.get("checksum"), self.checksum_parser.parse_checksum
    )
    external_document_id: Optional[str] = external_document_ref_dict.get("externalDocumentId")
    document_uri: Optional[str] = external_document_ref_dict.get("spdxDocument")
    raise_parsing_error_if_logger_has_messages(logger, "ExternalDocumentRef")
    external_document_ref: ExternalDocumentRef = construct_or_raise_parsing_error(
        ExternalDocumentRef,
        dict(document_ref_id=external_document_id, checksum=checksum, document_uri=document_uri),
    )
    return external_document_ref