schrodinger.application.models.datamodels.validation module¶
- class schrodinger.application.models.datamodels.validation.InputViolationType¶
Bases:
Enum- VALUE_TYPE = 1¶
- class schrodinger.application.models.datamodels.validation.ConfigViolationType¶
Bases:
Enum- DEFINITION_ID_MISMATCH = 1¶
- PARENT_ID_MISMATCH = 2¶
- class schrodinger.application.models.datamodels.validation.Violation(model: ModelInterface)¶
Bases:
object- model: ModelInterface¶
- __init__(model: ModelInterface) None¶
- class schrodinger.application.models.datamodels.validation.InputViolation(model: ModelInterface, input: InputInterface, parent_input: InputInterface, violation_type: InputViolationType)¶
Bases:
ViolationViolation for an input that exists in both parent and child.
- input: InputInterface¶
- parent_input: InputInterface¶
- violation_type: InputViolationType¶
- __init__(model: ModelInterface, input: InputInterface, parent_input: InputInterface, violation_type: InputViolationType) None¶
- class schrodinger.application.models.datamodels.validation.MissingInputViolation(model: ModelInterface, parent_input: InputInterface)¶
Bases:
ViolationViolation when child is missing an input that parent has.
- parent_input: InputInterface¶
- __init__(model: ModelInterface, parent_input: InputInterface) None¶
- class schrodinger.application.models.datamodels.validation.UnexpectedInputViolation(model: ModelInterface, input: InputInterface)¶
Bases:
ViolationViolation when child has an input that parent doesn’t have.
- input: InputInterface¶
- __init__(model: ModelInterface, input: InputInterface) None¶
- class schrodinger.application.models.datamodels.validation.ConfigViolation(model: ModelInterface, parent: ModelInterface, violation_type: ConfigViolationType)¶
Bases:
Violation- parent: ModelInterface¶
- violation_type: ConfigViolationType¶
- __init__(model: ModelInterface, parent: ModelInterface, violation_type: ConfigViolationType) None¶
- class schrodinger.application.models.datamodels.validation.ValidationSummary(violations: list[Violation] | None = None)¶
Bases:
object- getModelViolations(model: ModelInterface) list[Violation]¶
- extend(other: Self) None¶
- getInputViolations(inp: InputInterface) list[InputViolation | UnexpectedInputViolation]¶
Return violations for the given input.
Note: Does not include MissingInputViolation because those represent inputs that don’t exist in the child config.
- class schrodinger.application.models.datamodels.validation.AbstractValidator¶
Bases:
object- validate() ValidationSummary¶
- class schrodinger.application.models.datamodels.validation.ModelTreeValidator(model_tree)¶
Bases:
AbstractValidator- __init__(model_tree)¶
- validate() ValidationSummary¶
- validateTree() ValidationSummary¶
- class schrodinger.application.models.datamodels.validation.CompositeModelValidator(composite)¶
Bases:
AbstractValidator- __init__(composite)¶
- validate() ValidationSummary¶
- validateConfigurations() ValidationSummary¶
- class schrodinger.application.models.datamodels.validation.DefinitionValidator¶
Bases:
AbstractValidator- validate() ValidationSummary¶
- class schrodinger.application.models.datamodels.validation.ConfigurationValidator(config: ModelConfiguration, parent: ModelInterface)¶
Bases:
AbstractValidator- __init__(config: ModelConfiguration, parent: ModelInterface)¶
- validate() ValidationSummary¶
- class schrodinger.application.models.datamodels.validation.InputValidator(config: ModelConfiguration, parent: ModelInterface)¶
Bases:
AbstractValidator- __init__(config: ModelConfiguration, parent: ModelInterface)¶
- static getMismatchedInputNames(child: ModelInterface, parent: ModelInterface) tuple[set[str], set[str]]¶
Return input names that differ between child and parent.
- Parameters:
child – The child model (config).
parent – The parent model (definition or config).
- Returns:
A tuple of (unexpected, missing) name sets, where unexpected names are in child but not parent, and missing names are in parent but not child.
- validate() ValidationSummary¶
- class schrodinger.application.models.datamodels.validation.MetadataValidator¶
Bases:
AbstractValidator- validate() ValidationSummary¶
- schrodinger.application.models.datamodels.validation.validate_tree(model_tree) ValidationSummary¶
Validate the entire model tree and return a summary of violations.
- schrodinger.application.models.datamodels.validation.validate_composite_model(composite) ValidationSummary¶
Validate the entire composite model and return a summary of violations.