julee.domain.models.policy.document_policy_validation

DocumentPolicyValidation domain models for the Capture, Extract, Assemble, Publish workflow.

This module contains the DocumentPolicyValidation domain object that represents the result of validating a document against a policy configuration in the CEAP workflow system.

A DocumentPolicyValidation captures the complete validation process including: - The document being validated and the policy used - Actual validation scores achieved against policy criteria - Optional transformation results and post-transformation scores - Status tracking throughout the validation lifecycle

All domain models use Pydantic BaseModel for validation, serialization, and type safety, following the patterns established in the sample project.

Classes

DocumentPolicyValidation

Represents the validation of a document against a policy configuration.

DocumentPolicyValidationStatus

Status of a document policy validation process.

Module Contents

class julee.domain.models.policy.document_policy_validation.DocumentPolicyValidation(/, **data)[source]

Bases: pydantic.BaseModel

Represents the validation of a document against a policy configuration.

A DocumentPolicyValidation tracks the complete lifecycle of validating a document against policy criteria. It includes:

  1. Initial validation: Document is scored against policy validation queries

  2. Optional transformation: If policy includes transformation queries and initial validation fails, transformations are applied

  3. Re-validation: Transformed document is re-scored against policy criteria

  4. Final determination: Pass/fail based on final validation scores

The validation process supports both validation-only policies and policies that include transformations for document quality improvement.

classmethod error_message_must_be_valid(v)[source]
classmethod input_document_id_must_not_be_empty(v)[source]
classmethod policy_id_must_not_be_empty(v)[source]
classmethod post_transform_scores_must_be_valid(v)[source]
classmethod transformed_document_id_must_be_valid(v)[source]
classmethod validation_scores_must_be_valid(v)[source]
completed_at: datetime.datetime | None = None[source]
error_message: str | None = None[source]
input_document_id: str = None[source]
passed: bool | None = None[source]
policy_id: str = None[source]
post_transform_validation_scores: list[tuple[str, int]] | None = None[source]
started_at: datetime.datetime | None = None[source]
status: DocumentPolicyValidationStatus[source]
transformed_document_id: str | None = None[source]
validation_id: str = None[source]
validation_scores: list[tuple[str, int]] = None[source]
class julee.domain.models.policy.document_policy_validation.DocumentPolicyValidationStatus[source]

Bases: str, enum.Enum

Status of a document policy validation process.

ERROR = 'error'[source]
FAILED = 'failed'[source]
IN_PROGRESS = 'in_progress'[source]
PASSED = 'passed'[source]
PENDING = 'pending'[source]
TRANSFORMATION_COMPLETE = 'transformation_complete'[source]
TRANSFORMATION_IN_PROGRESS = 'transformation_in_progress'[source]
TRANSFORMATION_REQUIRED = 'transformation_required'[source]
VALIDATION_COMPLETE = 'validation_complete'[source]