Opinions
- class authorityspoke.opinions.Opinion(**data)
A document that resolves legal issues in a case and posits legal holdings.
Usually an opinion must have
type="majority"
to create holdings binding on any courts.- Parameters:
type – the opinion’s attitude toward the court’s disposition of the case. e.g.
majority
,dissenting
,concurring
,concurring in the result
author – name of the judge who authored the opinion, if identified
text
- __str__()
Return str(self).
- classmethod remove_author_name_punctuation(v)
Normalize Opinion author names by removing punctuation.
- Return type:
- locate_text(selection)
Get set of position selectors for text in Opinion.
- Return type:
- select_text(selector)
Get text using a
TextQuoteSelector
.- Parameters:
selector (
TextQuoteSelector
) – a selector referencing a text passage in theOpinion
.- Return type:
- Returns:
the text referenced by the selector, or
None
if the text can’t be found.
- __pydantic_fields_set__: set[str]
The names of fields explicitly set during instantiation.
- __pydantic_extra__: dict[str, Any] | None
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__: dict[str, Any] | None
Values of private attributes set on the model instance.
- __class_vars__: ClassVar[set[str]] = {}
The names of the class variables defined on the model.
- __private_attributes__: ClassVar[Dict[str, ModelPrivateAttr]] = {}
Metadata about the private attributes of the model.
- __pydantic_complete__: ClassVar[bool] = True
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__: ClassVar[Dict[str, ComputedFieldInfo]] = {}
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__: ClassVar[CoreSchema] = {'cls': <class 'justopinion.decisions.Opinion'>, 'config': {'title': 'Opinion'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'justopinion.decisions.Opinion'>>]}, 'ref': 'justopinion.decisions.Opinion:94435301675264', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'author': {'metadata': {}, 'schema': {'default': '', 'schema': {'function': {'function': <bound method Opinion.remove_author_name_punctuation of <class 'justopinion.decisions.Opinion'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}, 'text': {'metadata': {}, 'schema': {'default': '', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'type': {'metadata': {}, 'schema': {'default': 'majority', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Opinion', 'type': 'model-fields'}, 'type': 'model'}
The core schema of the model.
- __pydantic_custom_init__: ClassVar[bool] = False
Whether the model has a custom __init__ method.
- __pydantic_decorators__: ClassVar[_decorators.DecoratorInfos] = DecoratorInfos(validators={}, field_validators={'remove_author_name_punctuation': Decorator(cls_ref='justopinion.decisions.Opinion:94435301675264', cls_var_name='remove_author_name_punctuation', func=<bound method Opinion.remove_author_name_punctuation of <class 'justopinion.decisions.Opinion'>>, shim=None, info=FieldValidatorDecoratorInfo(fields=('author',), mode='before', check_fields=None, json_schema_input_type=PydanticUndefined))}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_fields__: ClassVar[Dict[str, FieldInfo]] = {'author': FieldInfo(annotation=str, required=False, default=''), 'text': FieldInfo(annotation=str, required=False, default=''), 'type': FieldInfo(annotation=str, required=False, default='majority')}
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__: ClassVar[_generics.PydanticGenericMetadata] = {'args': (), 'origin': None, 'parameters': ()}
Metadata for generic models; contains data used for a similar purpose to __args__, __origin__, __parameters__ in typing-module generics. May eventually be replaced by these.
- __pydantic_parent_namespace__: ClassVar[Dict[str, Any] | None] = None
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__: ClassVar[None | Literal['model_post_init']] = None
The name of the post-init method for the model, if defined.
- __pydantic_serializer__: ClassVar[SchemaSerializer] = SchemaSerializer(serializer=Model( ModelSerializer { class: Py( 0x000055e36e9c5100, ), serializer: Fields( GeneralFieldsSerializer { fields: { "author": SerField { key_py: Py( 0x00007faacb0044e0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacc092ed0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, }, "type": SerField { key_py: Py( 0x00007faacc09b920, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faac03661b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, }, "text": SerField { key_py: Py( 0x00007faacc09b618, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacc092ed0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 3, }, ), has_extra: false, root_model: false, name: "Opinion", }, ), definitions=[])
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_validator__: ClassVar[SchemaValidator | PluggableSchemaValidator] = SchemaValidator(title="Opinion", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "type", lookup_key: Simple { key: "type", py_key: Py( 0x00007faac05617a0, ), path: LookupPath( [ S( "type", Py( 0x00007faac05616b0, ), ), ], ), }, name_py: Py( 0x00007faacc09b920, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faac03661b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "author", lookup_key: Simple { key: "author", py_key: Py( 0x00007faac0561860, ), path: LookupPath( [ S( "author", Py( 0x00007faac05617d0, ), ), ], ), }, name_py: Py( 0x00007faacb0044e0, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacc092ed0, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), func: Py( 0x00007faac0be7fc0, ), config: Py( 0x00007faac0be7440, ), name: "function-before[remove_author_name_punctuation(), str]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: false, name: "default[function-before[remove_author_name_punctuation(), str]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "text", lookup_key: Simple { key: "text", py_key: Py( 0x00007faac05621c0, ), path: LookupPath( [ S( "text", Py( 0x00007faac0561d40, ), ), ], ), }, name_py: Py( 0x00007faacc09b618, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacc092ed0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, ], model_name: "Opinion", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055e36e9c5100, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007faac11ff6e0, ), name: "Opinion", }, ), definitions=[], cache_strings=True)
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__: ClassVar[Signature] = <Signature (*, type: str = 'majority', author: str = '', text: str = '') -> None>
The synthesized __init__ [Signature][inspect.Signature] of the model.
- __weakref__
list of weak references to the object
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class authorityspoke.opinions.AnchoredHoldings(**data)
Holdings with objects storing the Holdings’ links to Opinion text.
- add_term(term, anchors)
Add a term that can be found in self’s holdings, with the term’s anchors to the text.
- Return type:
- get_term_anchors(key)
Get the anchors for a term.
- Return type:
- find_enactment_index(enactment)
Find the index of a term in the holdings.
- add_enactment(enactment, anchors)
Add EnactmentPassage with text anchors, if it isn’t a duplicate.
- Return type:
- get_enactment_anchors(key)
Get the anchors for a term.
- Return type:
- __pydantic_fields_set__: set[str]
The names of fields explicitly set during instantiation.
- __pydantic_extra__: dict[str, Any] | None
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__: dict[str, Any] | None
Values of private attributes set on the model instance.
- __class_vars__: ClassVar[set[str]] = {}
The names of the class variables defined on the model.
- __private_attributes__: ClassVar[Dict[str, ModelPrivateAttr]] = {}
Metadata about the private attributes of the model.
- __pydantic_complete__: ClassVar[bool] = True
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__: ClassVar[Dict[str, ComputedFieldInfo]] = {}
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__: ClassVar[CoreSchema] = {'definitions': [{'cls': <class 'nettlesome.predicates.Predicate'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'Predicate'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'nettlesome.predicates.Predicate'>>]}, 'ref': 'nettlesome.predicates.Predicate:94435302802368', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'truth': {'metadata': {}, 'schema': {'default': True, 'schema': {'schema': {'type': 'bool'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Predicate', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'nettlesome.quantities.Comparison'>, 'config': {'title': 'Comparison'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'nettlesome.quantities.Comparison'>>]}, 'ref': 'nettlesome.quantities.Comparison:94435315249936', 'root_model': False, 'schema': {'function': {'function': <bound method Comparison.set_quantity_range of <class 'nettlesome.quantities.Comparison'>>, 'type': 'no-info'}, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'function': {'function': <bound method Comparison.content_ends_with_was of <class 'nettlesome.quantities.Comparison'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-after'}, 'type': 'model-field'}, 'quantity_range': {'metadata': {}, 'schema': {'choices': [{'schema_ref': 'nettlesome.quantities.DecimalRange:94435315243504', 'type': 'definition-ref'}, {'schema_ref': 'nettlesome.quantities.UnitRange:94435315385808', 'type': 'definition-ref'}, {'schema_ref': 'nettlesome.quantities.DateRange:94435315371280', 'type': 'definition-ref'}], 'type': 'union'}, 'type': 'model-field'}, 'truth': {'metadata': {}, 'schema': {'default': True, 'schema': {'schema': {'type': 'bool'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Comparison', 'type': 'model-fields'}, 'type': 'function-before'}, 'type': 'model'}, {'cls': <class 'nettlesome.entities.Entity'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'Entity'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'nettlesome.entities.Entity'>>]}, 'ref': 'nettlesome.entities.Entity:94435302767904', 'root_model': False, 'schema': {'function': {'function': <bound method Entity.validate_type of <class 'nettlesome.entities.Entity'>>, 'type': 'no-info'}, 'schema': {'computed_fields': [], 'fields': {'absent': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'generic': {'metadata': {}, 'schema': {'default': True, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': '', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'plural': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Entity', 'type': 'model-fields'}, 'type': 'function-before'}, 'type': 'model'}, {'cls': <class 'nettlesome.quantities.DecimalRange'>, 'config': {'title': 'DecimalRange'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'nettlesome.quantities.DecimalRange'>>]}, 'ref': 'nettlesome.quantities.DecimalRange:94435315243504', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'include_negatives': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'bool'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'quantity': {'metadata': {}, 'schema': {'type': 'decimal'}, 'type': 'model-field'}, 'sign': {'metadata': {}, 'schema': {'default': '==', 'schema': {'function': {'function': <bound method QuantityRange.check_sign of <class 'nettlesome.quantities.DecimalRange'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'DecimalRange', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'nettlesome.quantities.UnitRange'>, 'config': {'title': 'UnitRange'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'nettlesome.quantities.UnitRange'>>]}, 'ref': 'nettlesome.quantities.UnitRange:94435315385808', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'include_negatives': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'bool'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'quantity_magnitude': {'metadata': {}, 'schema': {'type': 'decimal'}, 'type': 'model-field'}, 'quantity_units': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'sign': {'metadata': {}, 'schema': {'default': '==', 'schema': {'function': {'function': <bound method QuantityRange.check_sign of <class 'nettlesome.quantities.UnitRange'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'UnitRange', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'nettlesome.quantities.DateRange'>, 'config': {'title': 'DateRange'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'nettlesome.quantities.DateRange'>>]}, 'ref': 'nettlesome.quantities.DateRange:94435315371280', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'include_negatives': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'bool'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'quantity': {'metadata': {}, 'schema': {'type': 'date'}, 'type': 'model-field'}, 'sign': {'metadata': {}, 'schema': {'default': '==', 'schema': {'function': {'function': <bound method QuantityRange.check_sign of <class 'nettlesome.quantities.DateRange'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'DateRange', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'authorityspoke.facts.Pleading'>, 'config': {'title': 'Pleading'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.facts.Pleading'>>]}, 'ref': 'authorityspoke.facts.Pleading:94435315634880', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'absent': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'filer': {'metadata': {}, 'schema': {'schema_ref': 'nettlesome.entities.Entity:94435302767904', 'type': 'definition-ref'}, 'type': 'model-field'}, 'generic': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Pleading', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'authorityspoke.facts.Exhibit'>, 'config': {'title': 'Exhibit'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.facts.Exhibit'>>]}, 'ref': 'authorityspoke.facts.Exhibit:94435316796352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'absent': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'form': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'generic': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'offered_by': {'metadata': {}, 'schema': {'schema_ref': 'nettlesome.entities.Entity:94435302767904', 'type': 'definition-ref'}, 'type': 'model-field'}, 'statement': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'schema_ref': 'authorityspoke.facts.Fact:94435315736224', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'statement_attribution': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'schema_ref': 'nettlesome.entities.Entity:94435302767904', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Exhibit', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'authorityspoke.facts.Evidence'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'Evidence'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.facts.Evidence'>>]}, 'ref': 'authorityspoke.facts.Evidence:94435315837424', 'root_model': False, 'schema': {'function': {'function': <bound method Evidence.check_type_field of <class 'authorityspoke.facts.Evidence'>>, 'type': 'no-info'}, 'schema': {'computed_fields': [], 'fields': {'absent': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'exhibit': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'schema_ref': 'authorityspoke.facts.Exhibit:94435316796352', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'generic': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'to_effect': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'schema_ref': 'authorityspoke.facts.Fact:94435315736224', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Evidence', 'type': 'model-fields'}, 'type': 'function-before'}, 'type': 'model'}, {'cls': <class 'authorityspoke.facts.Fact'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'Fact'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.facts.Fact'>>]}, 'ref': 'authorityspoke.facts.Fact:94435315736224', 'root_model': False, 'schema': {'function': {'function': <bound method Fact.nest_predicate_fields of <class 'authorityspoke.facts.Fact'>>, 'type': 'no-info'}, 'schema': {'computed_fields': [], 'fields': {'absent': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'generic': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': '', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'predicate': {'metadata': {}, 'schema': {'choices': [{'schema_ref': 'nettlesome.predicates.Predicate:94435302802368', 'type': 'definition-ref'}, {'schema_ref': 'nettlesome.quantities.Comparison:94435315249936', 'type': 'definition-ref'}], 'type': 'union'}, 'type': 'model-field'}, 'standard_of_proof': {'metadata': {}, 'schema': {'default': None, 'schema': {'function': {'function': <bound method Fact.validate_standard_of_proof of <class 'authorityspoke.facts.Fact'>>, 'type': 'no-info'}, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}, 'terms': {'metadata': {}, 'schema': {'default': [], 'schema': {'function': {'field_name': 'terms', 'function': <bound method Fact._validate_terms of <class 'authorityspoke.facts.Fact'>>, 'type': 'with-info'}, 'schema': {'function': {'field_name': 'terms', 'function': <bound method Fact.terms_as_sequence of <class 'authorityspoke.facts.Fact'>>, 'type': 'with-info'}, 'schema': {'items_schema': {'choices': [{'schema_ref': 'nettlesome.entities.Entity:94435302767904', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Fact:94435315736224', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Allegation:94435316805088', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Pleading:94435315634880', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Exhibit:94435316796352', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Evidence:94435315837424', 'type': 'definition-ref'}], 'type': 'union'}, 'type': 'list'}, 'type': 'function-before'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Fact', 'type': 'model-fields'}, 'type': 'function-before'}, 'type': 'model'}, {'cls': <class 'authorityspoke.facts.Allegation'>, 'config': {'title': 'Allegation'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.facts.Allegation'>>]}, 'ref': 'authorityspoke.facts.Allegation:94435316805088', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'absent': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'fact': {'metadata': {}, 'schema': {'schema_ref': 'authorityspoke.facts.Fact:94435315736224', 'type': 'definition-ref'}, 'type': 'model-field'}, 'generic': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'pleading': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'schema_ref': 'authorityspoke.facts.Pleading:94435315634880', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Allegation', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'legislice.enactments.TextVersion'>, 'config': {'title': 'TextVersion'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'legislice.enactments.TextVersion'>>]}, 'ref': 'legislice.enactments.TextVersion:94435302314752', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'function': {'function': <bound method TextVersion.content_exists of <class 'legislice.enactments.TextVersion'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-after'}, 'type': 'model-field'}, 'id': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'int'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'url': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'TextVersion', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'anchorpoint.textselectors.TextPositionSet'>, 'config': {'title': 'TextPositionSet'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'anchorpoint.textselectors.TextPositionSet'>>]}, 'ref': 'anchorpoint.textselectors.TextPositionSet:94435301503696', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'positions': {'metadata': {}, 'schema': {'default': [], 'schema': {'function': {'function': <bound method TextPositionSet.order_of_selectors of <class 'anchorpoint.textselectors.TextPositionSet'>>, 'type': 'no-info'}, 'schema': {'function': {'function': <bound method TextPositionSet.is_sequence of <class 'anchorpoint.textselectors.TextPositionSet'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'schema_ref': 'anchorpoint.textselectors.TextPositionSelector:94435301490640', 'type': 'definition-ref'}, 'type': 'list'}, 'type': 'function-before'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}, 'quotes': {'metadata': {}, 'schema': {'default': [], 'schema': {'function': {'function': <bound method TextPositionSet.quote_selectors_are_in_list of <class 'anchorpoint.textselectors.TextPositionSet'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'schema_ref': 'anchorpoint.textselectors.TextQuoteSelector:94435301478608', 'type': 'definition-ref'}, 'type': 'list'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'TextPositionSet', 'type': 'model-fields'}, 'type': 'model'}, {'function': {'function': <function TextPositionSelector.start_less_than_end>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'anchorpoint.textselectors.TextPositionSelector'>>]}, 'ref': 'anchorpoint.textselectors.TextPositionSelector:94435301490640', 'schema': {'cls': <class 'anchorpoint.textselectors.TextPositionSelector'>, 'config': {'title': 'TextPositionSelector'}, 'custom_init': False, 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'end': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'int'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'start': {'metadata': {}, 'schema': {'default': 0, 'schema': {'function': {'function': <bound method TextPositionSelector.start_not_negative of <class 'anchorpoint.textselectors.TextPositionSelector'>>, 'type': 'no-info'}, 'schema': {'type': 'int'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'TextPositionSelector', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'function-after'}, {'cls': <class 'anchorpoint.textselectors.TextQuoteSelector'>, 'config': {'title': 'TextQuoteSelector'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'anchorpoint.textselectors.TextQuoteSelector'>>]}, 'ref': 'anchorpoint.textselectors.TextQuoteSelector:94435301478608', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'exact': {'metadata': {}, 'schema': {'default': '', 'schema': {'function': {'function': <bound method TextQuoteSelector.no_none_for_prefix of <class 'anchorpoint.textselectors.TextQuoteSelector'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}, 'prefix': {'metadata': {}, 'schema': {'default': '', 'schema': {'function': {'function': <bound method TextQuoteSelector.no_none_for_prefix of <class 'anchorpoint.textselectors.TextQuoteSelector'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}, 'suffix': {'metadata': {}, 'schema': {'default': '', 'schema': {'function': {'function': <bound method TextQuoteSelector.no_none_for_prefix of <class 'anchorpoint.textselectors.TextQuoteSelector'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'TextQuoteSelector', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'legislice.enactments.CrossReference'>, 'config': {'title': 'CrossReference'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'legislice.enactments.CrossReference'>>]}, 'ref': 'legislice.enactments.CrossReference:94435302278640', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'reference_text': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'target_node': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'int'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'target_uri': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'target_url': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'CrossReference', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'legislice.enactments.Enactment'>, 'config': {'title': 'Enactment'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'legislice.enactments.Enactment'>>]}, 'ref': 'legislice.enactments.Enactment:94435302342864', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'anchors': {'metadata': {}, 'schema': {'default': [], 'schema': {'choices': [{'schema_ref': 'anchorpoint.textselectors.TextPositionSet:94435301503696', 'type': 'definition-ref'}, {'items_schema': {'choices': [{'schema_ref': 'anchorpoint.textselectors.TextPositionSelector:94435301490640', 'type': 'definition-ref'}, {'schema_ref': 'anchorpoint.textselectors.TextQuoteSelector:94435301478608', 'type': 'definition-ref'}], 'type': 'union'}, 'type': 'list'}], 'type': 'union'}, 'type': 'default'}, 'type': 'model-field'}, 'children': {'metadata': {}, 'schema': {'default': [], 'schema': {'choices': [{'items_schema': {'schema_ref': 'legislice.enactments.Enactment:94435302342864', 'type': 'definition-ref'}, 'type': 'list'}, {'items_schema': {'type': 'str'}, 'type': 'list'}], 'type': 'union'}, 'type': 'default'}, 'type': 'model-field'}, 'citations': {'metadata': {}, 'schema': {'default': [], 'schema': {'items_schema': {'schema_ref': 'legislice.enactments.CrossReference:94435302278640', 'type': 'definition-ref'}, 'type': 'list'}, 'type': 'default'}, 'type': 'model-field'}, 'earliest_in_db': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'date'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'end_date': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'date'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'first_published': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'date'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'heading': {'metadata': {}, 'schema': {'default': '', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': '', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'node': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'start_date': {'metadata': {}, 'schema': {'type': 'date'}, 'type': 'model-field'}, 'text_version': {'metadata': {}, 'schema': {'default': None, 'schema': {'function': {'function': <bound method Enactment.make_text_version_from_str of <class 'legislice.enactments.Enactment'>>, 'type': 'no-info'}, 'schema': {'schema': {'schema_ref': 'legislice.enactments.TextVersion:94435302314752', 'type': 'definition-ref'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Enactment', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'legislice.groups.EnactmentGroup'>, 'config': {'title': 'EnactmentGroup'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'legislice.groups.EnactmentGroup'>>]}, 'ref': 'legislice.groups.EnactmentGroup:94435302644896', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'passages': {'metadata': {}, 'schema': {'default': [], 'schema': {'function': {'function': <bound method EnactmentGroup.sort_passages of <class 'legislice.groups.EnactmentGroup'>>, 'type': 'no-info'}, 'schema': {'function': {'function': <bound method EnactmentGroup.consolidate_passages of <class 'legislice.groups.EnactmentGroup'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'schema_ref': 'legislice.enactments.EnactmentPassage:94435302434048', 'type': 'definition-ref'}, 'type': 'list'}, 'type': 'function-before'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'EnactmentGroup', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'legislice.enactments.EnactmentPassage'>, 'config': {'title': 'EnactmentPassage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'legislice.enactments.EnactmentPassage'>>]}, 'ref': 'legislice.enactments.EnactmentPassage:94435302434048', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'enactment': {'metadata': {}, 'schema': {'schema_ref': 'legislice.enactments.Enactment:94435302342864', 'type': 'definition-ref'}, 'type': 'model-field'}, 'selection': {'metadata': {}, 'schema': {'default': TextPositionSet(positions=[TextPositionSelector(start=0, end=None)], quotes=[]), 'schema': {'schema_ref': 'anchorpoint.textselectors.TextPositionSet:94435301503696', 'type': 'definition-ref'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'EnactmentPassage', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'authorityspoke.opinions.AnchoredHoldings'>, 'config': {'title': 'AnchoredHoldings'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.opinions.AnchoredHoldings'>>]}, 'ref': 'authorityspoke.opinions.AnchoredHoldings:94435318123024', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'enactment_anchors': {'metadata': {}, 'schema': {'default': [], 'schema': {'items_schema': {'cls': <class 'authorityspoke.opinions.EnactmentWithAnchors'>, 'config': {'title': 'EnactmentWithAnchors'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.opinions.EnactmentWithAnchors'>>]}, 'ref': 'authorityspoke.opinions.EnactmentWithAnchors:94435318100688', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'anchors': {'metadata': {}, 'schema': {'default': TextPositionSet(positions=[], quotes=[]), 'schema': {'function': {'function': <bound method EnactmentWithAnchors.validate_anchors of <class 'authorityspoke.opinions.EnactmentWithAnchors'>>, 'type': 'no-info'}, 'schema': {'schema_ref': 'anchorpoint.textselectors.TextPositionSet:94435301503696', 'type': 'definition-ref'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}, 'passage': {'metadata': {}, 'schema': {'schema_ref': 'legislice.enactments.EnactmentPassage:94435302434048', 'type': 'definition-ref'}, 'type': 'model-field'}}, 'model_name': 'EnactmentWithAnchors', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'list'}, 'type': 'default'}, 'type': 'model-field'}, 'holdings': {'metadata': {}, 'schema': {'default': [], 'schema': {'items_schema': {'cls': <class 'authorityspoke.opinions.HoldingWithAnchors'>, 'config': {'title': 'HoldingWithAnchors'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.opinions.HoldingWithAnchors'>>]}, 'ref': 'authorityspoke.opinions.HoldingWithAnchors:94435317850256', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'anchors': {'metadata': {}, 'schema': {'default': TextPositionSet(positions=[], quotes=[]), 'schema': {'function': {'function': <bound method HoldingWithAnchors.validate_anchors of <class 'authorityspoke.opinions.HoldingWithAnchors'>>, 'type': 'no-info'}, 'schema': {'schema_ref': 'anchorpoint.textselectors.TextPositionSet:94435301503696', 'type': 'definition-ref'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}, 'holding': {'metadata': {}, 'schema': {'cls': <class 'authorityspoke.holdings.Holding'>, 'config': {'title': 'Holding'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.holdings.Holding'>>]}, 'ref': 'authorityspoke.holdings.Holding:94435316000112', 'root_model': False, 'schema': {'function': {'function': <bound method Holding.nest_factor_fields of <class 'authorityspoke.holdings.Holding'>>, 'type': 'no-info'}, 'schema': {'computed_fields': [], 'fields': {'absent': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'decided': {'metadata': {}, 'schema': {'default': True, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'exclusive': {'metadata': {}, 'schema': {'default': False, 'schema': {'function': {'field_name': 'exclusive', 'function': <bound method Holding.not_undecided_and_exclusive of <class 'authorityspoke.holdings.Holding'>>, 'type': 'with-info'}, 'schema': {'function': {'field_name': 'exclusive', 'function': <bound method Holding.not_invalid_and_exclusive of <class 'authorityspoke.holdings.Holding'>>, 'type': 'with-info'}, 'schema': {'type': 'bool'}, 'type': 'function-after'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}, 'generic': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'rule': {'metadata': {}, 'schema': {'cls': <class 'authorityspoke.rules.Rule'>, 'config': {'title': 'Rule'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.rules.Rule'>>]}, 'ref': 'authorityspoke.rules.Rule:94435315977904', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'absent': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'enactments': {'metadata': {}, 'schema': {'default': EnactmentGroup([]), 'schema': {'function': {'function': <bound method Rule.select_enactment_text of <class 'authorityspoke.rules.Rule'>>, 'type': 'no-info'}, 'schema': {'function': {'function': <bound method Rule.validate_enactment_groups of <class 'authorityspoke.rules.Rule'>>, 'type': 'no-info'}, 'schema': {'schema_ref': 'legislice.groups.EnactmentGroup:94435302644896', 'type': 'definition-ref'}, 'type': 'function-before'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}, 'enactments_despite': {'metadata': {}, 'schema': {'default': EnactmentGroup([]), 'schema': {'function': {'function': <bound method Rule.select_enactment_text of <class 'authorityspoke.rules.Rule'>>, 'type': 'no-info'}, 'schema': {'function': {'function': <bound method Rule.validate_enactment_groups of <class 'authorityspoke.rules.Rule'>>, 'type': 'no-info'}, 'schema': {'schema_ref': 'legislice.groups.EnactmentGroup:94435302644896', 'type': 'definition-ref'}, 'type': 'function-before'}, 'type': 'function-after'}, 'type': 'default'}, 'type': 'model-field'}, 'generic': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'mandatory': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'procedure': {'metadata': {}, 'schema': {'cls': <class 'authorityspoke.procedures.Procedure'>, 'config': {'title': 'Procedure'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.procedures.Procedure'>>]}, 'ref': 'authorityspoke.procedures.Procedure:94435316714080', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'despite': {'metadata': {}, 'schema': {'default': [], 'schema': {'function': {'function': <bound method Procedure._validate_factor_groups of <class 'authorityspoke.procedures.Procedure'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'choices': [{'schema_ref': 'authorityspoke.facts.Fact:94435315736224', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Allegation:94435316805088', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Pleading:94435315634880', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Exhibit:94435316796352', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Evidence:94435315837424', 'type': 'definition-ref'}], 'type': 'union'}, 'type': 'list'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}, 'inputs': {'metadata': {}, 'schema': {'default': [], 'schema': {'function': {'function': <bound method Procedure._validate_factor_groups of <class 'authorityspoke.procedures.Procedure'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'choices': [{'schema_ref': 'authorityspoke.facts.Fact:94435315736224', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Allegation:94435316805088', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Pleading:94435315634880', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Exhibit:94435316796352', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Evidence:94435315837424', 'type': 'definition-ref'}], 'type': 'union'}, 'type': 'list'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': '', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'outputs': {'metadata': {}, 'schema': {'function': {'function': <bound method Procedure._validate_outputs of <class 'authorityspoke.procedures.Procedure'>>, 'type': 'no-info'}, 'schema': {'items_schema': {'choices': [{'schema_ref': 'authorityspoke.facts.Fact:94435315736224', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Allegation:94435316805088', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Pleading:94435315634880', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Exhibit:94435316796352', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Evidence:94435315837424', 'type': 'definition-ref'}], 'type': 'union'}, 'type': 'list'}, 'type': 'function-before'}, 'type': 'model-field'}}, 'model_name': 'Procedure', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'universal': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Rule', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'rule_valid': {'metadata': {}, 'schema': {'default': True, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Holding', 'type': 'model-fields'}, 'type': 'function-before'}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'HoldingWithAnchors', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'list'}, 'type': 'default'}, 'type': 'model-field'}, 'named_anchors': {'metadata': {}, 'schema': {'default': [], 'schema': {'items_schema': {'cls': <class 'authorityspoke.opinions.TermWithAnchors'>, 'config': {'title': 'TermWithAnchors'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'authorityspoke.opinions.TermWithAnchors'>>]}, 'ref': 'authorityspoke.opinions.TermWithAnchors:94435317919008', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'anchors': {'metadata': {}, 'schema': {'default': TextPositionSet(positions=[], quotes=[]), 'schema': {'function': {'function': <bound method TermWithAnchors.validate_anchors of <class 'authorityspoke.opinions.TermWithAnchors'>>, 'type': 'no-info'}, 'schema': {'schema_ref': 'anchorpoint.textselectors.TextPositionSet:94435301503696', 'type': 'definition-ref'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}, 'term': {'metadata': {}, 'schema': {'choices': [{'schema_ref': 'nettlesome.entities.Entity:94435302767904', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Fact:94435315736224', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Allegation:94435316805088', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Pleading:94435315634880', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Exhibit:94435316796352', 'type': 'definition-ref'}, {'schema_ref': 'authorityspoke.facts.Evidence:94435315837424', 'type': 'definition-ref'}], 'type': 'union'}, 'type': 'model-field'}}, 'model_name': 'TermWithAnchors', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'list'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'AnchoredHoldings', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
The core schema of the model.
- __pydantic_custom_init__: ClassVar[bool] = False
Whether the model has a custom __init__ method.
- __pydantic_decorators__: ClassVar[_decorators.DecoratorInfos] = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_fields__: ClassVar[Dict[str, FieldInfo]] = {'enactment_anchors': FieldInfo(annotation=List[EnactmentWithAnchors], required=False, default=[]), 'holdings': FieldInfo(annotation=List[HoldingWithAnchors], required=False, default=[]), 'named_anchors': FieldInfo(annotation=List[TermWithAnchors], required=False, default=[])}
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__: ClassVar[_generics.PydanticGenericMetadata] = {'args': (), 'origin': None, 'parameters': ()}
Metadata for generic models; contains data used for a similar purpose to __args__, __origin__, __parameters__ in typing-module generics. May eventually be replaced by these.
- __pydantic_parent_namespace__: ClassVar[Dict[str, Any] | None] = None
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__: ClassVar[None | Literal['model_post_init']] = None
The name of the post-init method for the model, if defined.
- __pydantic_serializer__: ClassVar[SchemaSerializer] = SchemaSerializer(serializer=Model( ModelSerializer { class: Py( 0x000055e36f974a10, ), serializer: Fields( GeneralFieldsSerializer { fields: { "enactment_anchors": SerField { key_py: Py( 0x00007faaaab63b30, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaaaa3f480, ), ), serializer: List( ListSerializer { item_serializer: Model( ModelSerializer { class: Py( 0x000055e36f96f2d0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "anchors": SerField { key_py: Py( 0x00007faacb0bc960, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaaabcb890, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), }, ), ), required: true, }, "passage": SerField { key_py: Py( 0x00007faac0502940, ), alias: None, alias_py: None, serializer: Some( Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "EnactmentWithAnchors", }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[EnactmentWithAnchors]", }, ), }, ), ), required: true, }, "named_anchors": SerField { key_py: Py( 0x00007faaaab63ab0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaaaa3f980, ), ), serializer: List( ListSerializer { item_serializer: Model( ModelSerializer { class: Py( 0x000055e36f942d20, ), serializer: Fields( GeneralFieldsSerializer { fields: { "term": SerField { key_py: Py( 0x00007faacc09b5e8, ), alias: None, alias_py: None, serializer: Some( Union( UnionSerializer { choices: [ Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ], name: "Union[definition-ref, definition-ref, definition-ref, definition-ref, definition-ref, definition-ref]", }, ), ), required: true, }, "anchors": SerField { key_py: Py( 0x00007faacb0bc960, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaaabcb4d0, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "TermWithAnchors", }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[TermWithAnchors]", }, ), }, ), ), required: true, }, "holdings": SerField { key_py: Py( 0x00007faac8328cf0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaaab46a40, ), ), serializer: List( ListSerializer { item_serializer: Model( ModelSerializer { class: Py( 0x000055e36f932090, ), serializer: Fields( GeneralFieldsSerializer { fields: { "holding": SerField { key_py: Py( 0x00007faaaab935d0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055e36f76e570, ), serializer: Fields( GeneralFieldsSerializer { fields: { "rule_valid": SerField { key_py: Py( 0x00007faaaab4e430, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbf90080, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "exclusive": SerField { key_py: Py( 0x00007faac8bc5c30, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbf900a0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "decided": SerField { key_py: Py( 0x00007faaaab405a0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbf90080, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "generic": SerField { key_py: Py( 0x00007faaca607420, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbf900a0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "absent": SerField { key_py: Py( 0x00007faaca34fc30, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbf900a0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "rule": SerField { key_py: Py( 0x00007faaca5ee9a0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055e36f768eb0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "mandatory": SerField { key_py: Py( 0x00007faacb4aa8b0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbf900a0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "name": SerField { key_py: Py( 0x00007faacc099708, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbfa6480, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, }, "enactments": SerField { key_py: Py( 0x00007faac059a170, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaaabcad00, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), }, ), ), required: true, }, "generic": SerField { key_py: Py( 0x00007faaca607420, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbf900a0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "absent": SerField { key_py: Py( 0x00007faaca34fc30, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbf900a0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "enactments_despite": SerField { key_py: Py( 0x00007faaaab45d30, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaab7b8730, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), }, ), ), required: true, }, "universal": SerField { key_py: Py( 0x00007faacb27cf70, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacbf900a0, ), ), serializer: Bool( BoolSerializer, ), }, ), ), required: true, }, "procedure": SerField { key_py: Py( 0x00007faaca1c1ef0, ), alias: None, alias_py: None, serializer: Some( Model( ModelSerializer { class: Py( 0x000055e36f81ca60, ), serializer: Fields( GeneralFieldsSerializer { fields: { "outputs": SerField { key_py: Py( 0x00007faaaab41ad0, ), alias: None, alias_py: None, serializer: Some( List( ListSerializer { item_serializer: Union( UnionSerializer { choices: [ Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ], name: "Union[definition-ref, definition-ref, definition-ref, definition-ref, definition-ref]", }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[Union[definition-ref, definition-ref, definition-ref, definition-ref, definition-ref]]", }, ), ), required: true, }, "inputs": SerField { key_py: Py( 0x00007faac83a2940, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaaab741c0, ), ), serializer: List( ListSerializer { item_serializer: Union( UnionSerializer { choices: [ Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ], name: "Union[definition-ref, definition-ref, definition-ref, definition-ref, definition-ref]", }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[Union[definition-ref, definition-ref, definition-ref, definition-ref, definition-ref]]", }, ), }, ), ), required: true, }, "despite": SerField { key_py: Py( 0x00007faaaab41c20, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaaab74200, ), ), serializer: List( ListSerializer { item_serializer: Union( UnionSerializer { choices: [ Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), ], name: "Union[definition-ref, definition-ref, definition-ref, definition-ref, definition-ref]", }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[Union[definition-ref, definition-ref, definition-ref, definition-ref, definition-ref]]", }, ), }, ), ), required: true, }, "name": SerField { key_py: Py( 0x00007faacc099708, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faacc092ed0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 4, }, ), has_extra: false, root_model: false, name: "Procedure", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 8, }, ), has_extra: false, root_model: false, name: "Rule", }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 6, }, ), has_extra: false, root_model: false, name: "Holding", }, ), ), required: true, }, "anchors": SerField { key_py: Py( 0x00007faacb0bc960, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007faaab1d4dc0, ), ), serializer: Recursive( DefinitionRefSerializer { definition: "...", retry_with_lax_check: true, }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "HoldingWithAnchors", }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[HoldingWithAnchors]", }, ), }, ), ), required: true, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 3, }, ), has_extra: false, root_model: false, name: "AnchoredHoldings", }, ), definitions=[Model(ModelSerializer { class: Py(0x55e36f830bc0), serializer: Fields(GeneralFieldsSerializer { fields: {"name": SerField { key_py: Py(0x7faacc099708), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }, "absent": SerField { key_py: Py(0x7faaca34fc30), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "statement": SerField { key_py: Py(0x7faacc09b098), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }) }) })), required: true }, "generic": SerField { key_py: Py(0x7faaca607420), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "offered_by": SerField { key_py: Py(0x7faaaaba6bf0), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })), required: true }, "form": SerField { key_py: Py(0x7faac9b2db00), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }, "statement_attribution": SerField { key_py: Py(0x7faaaabbaef0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 7 }), has_extra: false, root_model: false, name: "Exhibit" }), Model(ModelSerializer { class: Py(0x55e36eacfd20), serializer: Fields(GeneralFieldsSerializer { fields: {"plural": SerField { key_py: Py(0x7faacb546370), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "generic": SerField { key_py: Py(0x7faaca607420), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf90080)), serializer: Bool(BoolSerializer) })), required: true }, "name": SerField { key_py: Py(0x7faacc099708), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacc092ed0)), serializer: Str(StrSerializer) })), required: true }, "absent": SerField { key_py: Py(0x7faaca34fc30), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 4 }), has_extra: false, root_model: false, name: "Entity" }), Model(ModelSerializer { class: Py(0x55e36eab1ca0), serializer: Fields(GeneralFieldsSerializer { fields: {"passages": SerField { key_py: Py(0x7faac03560f0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac0530f00)), serializer: List(ListSerializer { item_serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), filter: SchemaFilter { include: None, exclude: None }, name: "list[definition-ref]" }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 1 }), has_extra: false, root_model: false, name: "EnactmentGroup" }), Model(ModelSerializer { class: Py(0x55e36e99b2d0), serializer: Fields(GeneralFieldsSerializer { fields: {"quotes": SerField { key_py: Py(0x7faacb040f90), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac11c8e80)), serializer: List(ListSerializer { item_serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), filter: SchemaFilter { include: None, exclude: None }, name: "list[definition-ref]" }) })), required: true }, "positions": SerField { key_py: Py(0x7faacb39e5f0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac041fec0)), serializer: List(ListSerializer { item_serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), filter: SchemaFilter { include: None, exclude: None }, name: "list[definition-ref]" }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 2 }), has_extra: false, root_model: false, name: "TextPositionSet" }), Model(ModelSerializer { class: Py(0x55e36f7469f0), serializer: Fields(GeneralFieldsSerializer { fields: {"absent": SerField { key_py: Py(0x7faaca34fc30), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "to_effect": SerField { key_py: Py(0x7faaaabbb470), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }) }) })), required: true }, "exhibit": SerField { key_py: Py(0x7faaaab90a80), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }) }) })), required: true }, "generic": SerField { key_py: Py(0x7faaca607420), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "name": SerField { key_py: Py(0x7faacc099708), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 5 }), has_extra: false, root_model: false, name: "Evidence" }), Model(ModelSerializer { class: Py(0x55e36f6d85d0), serializer: Fields(GeneralFieldsSerializer { fields: {"include_negatives": SerField { key_py: Py(0x7faac037d2f0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Bool(BoolSerializer) }) })), required: true }, "quantity_units": SerField { key_py: Py(0x7faac037da30), alias: None, alias_py: None, serializer: Some(Str(StrSerializer)), required: true }, "sign": SerField { key_py: Py(0x7faacb49ecd0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac0370ff0)), serializer: Str(StrSerializer) })), required: true }, "quantity_magnitude": SerField { key_py: Py(0x7faac037d9f0), alias: None, alias_py: None, serializer: Some(Decimal(DecimalSerializer)), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 4 }), has_extra: false, root_model: false, name: "UnitRange" }), Model(ModelSerializer { class: Py(0x55e36ea61300), serializer: Fields(GeneralFieldsSerializer { fields: {"url": SerField { key_py: Py(0x7faacb163c90), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }, "id": SerField { key_py: Py(0x7faacc098470), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Int(IntSerializer) }) })), required: true }, "content": SerField { key_py: Py(0x7faacb37f060), alias: None, alias_py: None, serializer: Some(Str(StrSerializer)), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 3 }), has_extra: false, root_model: false, name: "TextVersion" }), Model(ModelSerializer { class: Py(0x55e36ea585f0), serializer: Fields(GeneralFieldsSerializer { fields: {"reference_text": SerField { key_py: Py(0x7faac059cab0), alias: None, alias_py: None, serializer: Some(Str(StrSerializer)), required: true }, "target_node": SerField { key_py: Py(0x7faaca282b70), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Int(IntSerializer) }) })), required: true }, "target_uri": SerField { key_py: Py(0x7faac059cb30), alias: None, alias_py: None, serializer: Some(Str(StrSerializer)), required: true }, "target_url": SerField { key_py: Py(0x7faac059caf0), alias: None, alias_py: None, serializer: Some(Str(StrSerializer)), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 4 }), has_extra: false, root_model: false, name: "CrossReference" }), Model(ModelSerializer { class: Py(0x55e36e997fd0), serializer: Fields(GeneralFieldsSerializer { fields: {"start": SerField { key_py: Py(0x7faacc09b068), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacc08dbc8)), serializer: Int(IntSerializer) })), required: true }, "end": SerField { key_py: Py(0x7faacc0976e8), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Int(IntSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 2 }), has_extra: false, root_model: false, name: "TextPositionSelector" }), Model(ModelSerializer { class: Py(0x55e36f72dea0), serializer: Fields(GeneralFieldsSerializer { fields: {"terms": SerField { key_py: Py(0x7faaca27c660), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faaaaba7e00)), serializer: List(ListSerializer { item_serializer: Union(UnionSerializer { choices: [Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })], name: "Union[definition-ref, definition-ref, definition-ref, definition-ref, definition-ref, definition-ref]" }), filter: SchemaFilter { include: None, exclude: None }, name: "list[Union[definition-ref, definition-ref, definition-ref, definition-ref, definition-ref, definition-ref]]" }) })), required: true }, "name": SerField { key_py: Py(0x7faacc099708), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacc092ed0)), serializer: Str(StrSerializer) })), required: true }, "predicate": SerField { key_py: Py(0x7faacb39c6b0), alias: None, alias_py: None, serializer: Some(Union(UnionSerializer { choices: [Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })], name: "Union[definition-ref, definition-ref]" })), required: true }, "generic": SerField { key_py: Py(0x7faaca607420), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "absent": SerField { key_py: Py(0x7faaca34fc30), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "standard_of_proof": SerField { key_py: Py(0x7faaaab7a230), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 6 }), has_extra: false, root_model: false, name: "Fact" }), Model(ModelSerializer { class: Py(0x55e36ea7e500), serializer: Fields(GeneralFieldsSerializer { fields: {"selection": SerField { key_py: Py(0x7faac0366070), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac159a1c0)), serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }) })), required: true }, "enactment": SerField { key_py: Py(0x7faac059b5b0), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 2 }), has_extra: false, root_model: false, name: "EnactmentPassage" }), Model(ModelSerializer { class: Py(0x55e36ead83c0), serializer: Fields(GeneralFieldsSerializer { fields: {"content": SerField { key_py: Py(0x7faacb37f060), alias: None, alias_py: None, serializer: Some(Str(StrSerializer)), required: true }, "truth": SerField { key_py: Py(0x7faacb4b1a40), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf90080)), serializer: Nullable(NullableSerializer { serializer: Bool(BoolSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 2 }), has_extra: false, root_model: false, name: "Predicate" }), Model(ModelSerializer { class: Py(0x55e36f6b59f0), serializer: Fields(GeneralFieldsSerializer { fields: {"quantity": SerField { key_py: Py(0x7faac037db70), alias: None, alias_py: None, serializer: Some(Decimal(DecimalSerializer)), required: true }, "sign": SerField { key_py: Py(0x7faacb49ecd0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac0370ff0)), serializer: Str(StrSerializer) })), required: true }, "include_negatives": SerField { key_py: Py(0x7faac037d2f0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Bool(BoolSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 3 }), has_extra: false, root_model: false, name: "DecimalRange" }), Model(ModelSerializer { class: Py(0x55e36f6d4d10), serializer: Fields(GeneralFieldsSerializer { fields: {"quantity": SerField { key_py: Py(0x7faac037db70), alias: None, alias_py: None, serializer: Some(Date(DateSerializer)), required: true }, "include_negatives": SerField { key_py: Py(0x7faac037d2f0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Bool(BoolSerializer) }) })), required: true }, "sign": SerField { key_py: Py(0x7faacb49ecd0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac0370ff0)), serializer: Str(StrSerializer) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 3 }), has_extra: false, root_model: false, name: "DateRange" }), Model(ModelSerializer { class: Py(0x55e36f832de0), serializer: Fields(GeneralFieldsSerializer { fields: {"generic": SerField { key_py: Py(0x7faaca607420), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "fact": SerField { key_py: Py(0x7faac01812f0), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })), required: true }, "absent": SerField { key_py: Py(0x7faaca34fc30), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "pleading": SerField { key_py: Py(0x7faaaabbb7b0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }) }) })), required: true }, "name": SerField { key_py: Py(0x7faacc099708), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 5 }), has_extra: false, root_model: false, name: "Allegation" }), Model(ModelSerializer { class: Py(0x55e36e9950d0), serializer: Fields(GeneralFieldsSerializer { fields: {"exact": SerField { key_py: Py(0x7faacb423480), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacc092ed0)), serializer: Str(StrSerializer) })), required: true }, "prefix": SerField { key_py: Py(0x7faacc050080), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacc092ed0)), serializer: Str(StrSerializer) })), required: true }, "suffix": SerField { key_py: Py(0x7faacc05bfc0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacc092ed0)), serializer: Str(StrSerializer) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 3 }), has_extra: false, root_model: false, name: "TextQuoteSelector" }), Model(ModelSerializer { class: Py(0x55e36ea680d0), serializer: Fields(GeneralFieldsSerializer { fields: {"first_published": SerField { key_py: Py(0x7faac059c5f0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Date(DateSerializer) }) })), required: true }, "anchors": SerField { key_py: Py(0x7faacb0bc960), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac0575340)), serializer: Union(UnionSerializer { choices: [Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), List(ListSerializer { item_serializer: Union(UnionSerializer { choices: [Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })], name: "Union[definition-ref, definition-ref]" }), filter: SchemaFilter { include: None, exclude: None }, name: "list[Union[definition-ref, definition-ref]]" })], name: "Union[definition-ref, list[Union[definition-ref, definition-ref]]]" }) })), required: true }, "citations": SerField { key_py: Py(0x7faacaffd0b0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac0576e40)), serializer: List(ListSerializer { item_serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), filter: SchemaFilter { include: None, exclude: None }, name: "list[definition-ref]" }) })), required: true }, "heading": SerField { key_py: Py(0x7faacb5235d0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacc092ed0)), serializer: Str(StrSerializer) })), required: true }, "node": SerField { key_py: Py(0x7faacb37f3c0), alias: None, alias_py: None, serializer: Some(Str(StrSerializer)), required: true }, "end_date": SerField { key_py: Py(0x7faac933d530), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Date(DateSerializer) }) })), required: true }, "name": SerField { key_py: Py(0x7faacc099708), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacc092ed0)), serializer: Str(StrSerializer) })), required: true }, "text_version": SerField { key_py: Py(0x7faac059c630), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }) }) })), required: true }, "start_date": SerField { key_py: Py(0x7faac059c970), alias: None, alias_py: None, serializer: Some(Date(DateSerializer)), required: true }, "children": SerField { key_py: Py(0x7faacb6197f0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faac056ad00)), serializer: Union(UnionSerializer { choices: [List(ListSerializer { item_serializer: Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), filter: SchemaFilter { include: None, exclude: None }, name: "list[definition-ref]" }), List(ListSerializer { item_serializer: Str(StrSerializer), filter: SchemaFilter { include: None, exclude: None }, name: "list[str]" })], name: "Union[list[definition-ref], list[str]]" }) })), required: true }, "earliest_in_db": SerField { key_py: Py(0x7faac059c5b0), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Date(DateSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 11 }), has_extra: false, root_model: false, name: "Enactment" }), Model(ModelSerializer { class: Py(0x55e36f6b7310), serializer: Fields(GeneralFieldsSerializer { fields: {"quantity_range": SerField { key_py: Py(0x7faac037e6b0), alias: None, alias_py: None, serializer: Some(Union(UnionSerializer { choices: [Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true }), Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })], name: "Union[definition-ref, definition-ref, definition-ref]" })), required: true }, "content": SerField { key_py: Py(0x7faacb37f060), alias: None, alias_py: None, serializer: Some(Str(StrSerializer)), required: true }, "truth": SerField { key_py: Py(0x7faacb4b1a40), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf90080)), serializer: Nullable(NullableSerializer { serializer: Bool(BoolSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 3 }), has_extra: false, root_model: false, name: "Comparison" }), Model(ModelSerializer { class: Py(0x55e36f7152c0), serializer: Fields(GeneralFieldsSerializer { fields: {"absent": SerField { key_py: Py(0x7faaca34fc30), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "filer": SerField { key_py: Py(0x7faaaab926d0), alias: None, alias_py: None, serializer: Some(Recursive(DefinitionRefSerializer { definition: "...", retry_with_lax_check: true })), required: true }, "generic": SerField { key_py: Py(0x7faaca607420), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbf900a0)), serializer: Bool(BoolSerializer) })), required: true }, "name": SerField { key_py: Py(0x7faacc099708), alias: None, alias_py: None, serializer: Some(WithDefault(WithDefaultSerializer { default: Default(Py(0x7faacbfa6480)), serializer: Nullable(NullableSerializer { serializer: Str(StrSerializer) }) })), required: true }}, computed_fields: Some(ComputedFields([])), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None }, required_fields: 4 }), has_extra: false, root_model: false, name: "Pleading" })])
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_validator__: ClassVar[SchemaValidator | PluggableSchemaValidator] = SchemaValidator(title="AnchoredHoldings", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "holdings", lookup_key: Simple { key: "holdings", py_key: Py( 0x00007faaaaa6e130, ), path: LookupPath( [ S( "holdings", Py( 0x00007faaaaa6df30, ), ), ], ), }, name_py: Py( 0x00007faac8328cf0, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaaab46a40, ), ), on_error: Raise, validator: List( ListValidator { strict: false, item_validator: Some( Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "holding", lookup_key: Simple { key: "holding", py_key: Py( 0x00007faaaab939c0, ), path: LookupPath( [ S( "holding", Py( 0x00007faaaab939f0, ), ), ], ), }, name_py: Py( 0x00007faaaab935d0, ), validator: Model( ModelValidator { revalidate: Never, validator: FunctionBefore( FunctionBeforeValidator { validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "generic", lookup_key: Simple { key: "generic", py_key: Py( 0x00007faaaab93570, ), path: LookupPath( [ S( "generic", Py( 0x00007faaaab935a0, ), ), ], ), }, name_py: Py( 0x00007faaca607420, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbf900a0, ), ), on_error: Raise, validator: Bool( BoolValidator { strict: false, }, ), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "absent", lookup_key: Simple { key: "absent", py_key: Py( 0x00007faaaab93600, ), path: LookupPath( [ S( "absent", Py( 0x00007faaaab93630, ), ), ], ), }, name_py: Py( 0x00007faaca34fc30, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbf900a0, ), ), on_error: Raise, validator: Bool( BoolValidator { strict: false, }, ), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "rule", lookup_key: Simple { key: "rule", py_key: Py( 0x00007faaaab93900, ), path: LookupPath( [ S( "rule", Py( 0x00007faaaab93930, ), ), ], ), }, name_py: Py( 0x00007faaca5ee9a0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "generic", lookup_key: Simple { key: "generic", py_key: Py( 0x00007faaaab93660, ), path: LookupPath( [ S( "generic", Py( 0x00007faaaab93690, ), ), ], ), }, name_py: Py( 0x00007faaca607420, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbf900a0, ), ), on_error: Raise, validator: Bool( BoolValidator { strict: false, }, ), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "absent", lookup_key: Simple { key: "absent", py_key: Py( 0x00007faaaab936c0, ), path: LookupPath( [ S( "absent", Py( 0x00007faaaab936f0, ), ), ], ), }, name_py: Py( 0x00007faaca34fc30, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbf900a0, ), ), on_error: Raise, validator: Bool( BoolValidator { strict: false, }, ), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "procedure", lookup_key: Simple { key: "procedure", py_key: Py( 0x00007faaaaa6de30, ), path: LookupPath( [ S( "procedure", Py( 0x00007faaaaa6dbf0, ), ), ], ), }, name_py: Py( 0x00007faaca1c1ef0, ), validator: Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "outputs", lookup_key: Simple { key: "outputs", py_key: Py( 0x00007faaaab93720, ), path: LookupPath( [ S( "outputs", Py( 0x00007faaaab93750, ), ), ], ), }, name_py: Py( 0x00007faaaab41ad0, ), validator: FunctionBefore( FunctionBeforeValidator { validator: List( ListValidator { strict: false, item_validator: Some( Union( UnionValidator { mode: Smart, choices: [ ( DefinitionRef( DefinitionRefValidator { definition: "Fact", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Allegation", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Pleading", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Exhibit", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Evidence", }, ), None, ), ], custom_error: None, strict: false, name: "union[Fact,Allegation,Pleading,Exhibit,Evidence]", }, ), ), min_length: None, max_length: None, name: OnceLock( "list[union[Fact,Allegation,Pleading,Exhibit,Evidence]]", ), fail_fast: false, }, ), func: Py( 0x00007faaaab4c240, ), config: Py( 0x00007faaaaa858c0, ), name: "function-before[_validate_outputs(), list[union[Fact,Allegation,Pleading,Exhibit,Evidence]]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "inputs", lookup_key: Simple { key: "inputs", py_key: Py( 0x00007faaaab93780, ), path: LookupPath( [ S( "inputs", Py( 0x00007faaaab937b0, ), ), ], ), }, name_py: Py( 0x00007faac83a2940, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaaab741c0, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: List( ListValidator { strict: false, item_validator: Some( Union( UnionValidator { mode: Smart, choices: [ ( DefinitionRef( DefinitionRefValidator { definition: "Fact", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Allegation", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Pleading", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Exhibit", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Evidence", }, ), None, ), ], custom_error: None, strict: false, name: "union[Fact,Allegation,Pleading,Exhibit,Evidence]", }, ), ), min_length: None, max_length: None, name: OnceLock( "list[union[Fact,Allegation,Pleading,Exhibit,Evidence]]", ), fail_fast: false, }, ), func: Py( 0x00007faaaab8f900, ), config: Py( 0x00007faaaaa858c0, ), name: "function-before[_validate_factor_groups(), list[union[Fact,Allegation,Pleading,Exhibit,Evidence]]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: true, name: "default[function-before[_validate_factor_groups(), list[union[Fact,Allegation,Pleading,Exhibit,Evidence]]]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "despite", lookup_key: Simple { key: "despite", py_key: Py( 0x00007faaaab937e0, ), path: LookupPath( [ S( "despite", Py( 0x00007faaaab93810, ), ), ], ), }, name_py: Py( 0x00007faaaab41c20, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaaab74200, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: List( ListValidator { strict: false, item_validator: Some( Union( UnionValidator { mode: Smart, choices: [ ( DefinitionRef( DefinitionRefValidator { definition: "Fact", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Allegation", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Pleading", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Exhibit", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Evidence", }, ), None, ), ], custom_error: None, strict: false, name: "union[Fact,Allegation,Pleading,Exhibit,Evidence]", }, ), ), min_length: None, max_length: None, name: OnceLock( "list[union[Fact,Allegation,Pleading,Exhibit,Evidence]]", ), fail_fast: false, }, ), func: Py( 0x00007faaaab8f900, ), config: Py( 0x00007faaaaa858c0, ), name: "function-before[_validate_factor_groups(), list[union[Fact,Allegation,Pleading,Exhibit,Evidence]]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: true, name: "default[function-before[_validate_factor_groups(), list[union[Fact,Allegation,Pleading,Exhibit,Evidence]]]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py( 0x00007faaaab93840, ), path: LookupPath( [ S( "name", Py( 0x00007faaaab93870, ), ), ], ), }, name_py: Py( 0x00007faacc099708, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacc092ed0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, ], model_name: "Procedure", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055e36f81ca60, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007faac11ff6e0, ), name: "Procedure", }, ), frozen: false, }, Field { name: "enactments", lookup_key: Simple { key: "enactments", py_key: Py( 0x00007faaaaa6dd70, ), path: LookupPath( [ S( "enactments", Py( 0x00007faaaaa6db70, ), ), ], ), }, name_py: Py( 0x00007faac059a170, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaaabcad00, ), ), on_error: Raise, validator: FunctionAfter( FunctionAfterValidator { validator: FunctionBefore( FunctionBeforeValidator { validator: DefinitionRef( DefinitionRefValidator { definition: "EnactmentGroup", }, ), func: Py( 0x00007faaaaf293c0, ), config: Py( 0x00007faaaaa860c0, ), name: "function-before[validate_enactment_groups(), EnactmentGroup]", field_name: None, info_arg: false, }, ), func: Py( 0x00007faaab8eae40, ), config: Py( 0x00007faaaaa860c0, ), name: "function-after[select_enactment_text(), function-before[validate_enactment_groups(), EnactmentGroup]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: true, name: "default[function-after[select_enactment_text(), function-before[validate_enactment_groups(), EnactmentGroup]]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "enactments_despite", lookup_key: Simple { key: "enactments_despite", py_key: Py( 0x00007faaaaa6dc70, ), path: LookupPath( [ S( "enactments_despite", Py( 0x00007faaaaa6dd30, ), ), ], ), }, name_py: Py( 0x00007faaaab45d30, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaab7b8730, ), ), on_error: Raise, validator: FunctionAfter( FunctionAfterValidator { validator: FunctionBefore( FunctionBeforeValidator { validator: DefinitionRef( DefinitionRefValidator { definition: "EnactmentGroup", }, ), func: Py( 0x00007faaaaf293c0, ), config: Py( 0x00007faaaaa860c0, ), name: "function-before[validate_enactment_groups(), EnactmentGroup]", field_name: None, info_arg: false, }, ), func: Py( 0x00007faaab8eae40, ), config: Py( 0x00007faaaaa860c0, ), name: "function-after[select_enactment_text(), function-before[validate_enactment_groups(), EnactmentGroup]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: true, name: "default[function-after[select_enactment_text(), function-before[validate_enactment_groups(), EnactmentGroup]]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "mandatory", lookup_key: Simple { key: "mandatory", py_key: Py( 0x00007faaaaa6ddb0, ), path: LookupPath( [ S( "mandatory", Py( 0x00007faaaaa6db30, ), ), ], ), }, name_py: Py( 0x00007faacb4aa8b0, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbf900a0, ), ), on_error: Raise, validator: Bool( BoolValidator { strict: false, }, ), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "universal", lookup_key: Simple { key: "universal", py_key: Py( 0x00007faaaaa6dbb0, ), path: LookupPath( [ S( "universal", Py( 0x00007faaaaa6dc30, ), ), ], ), }, name_py: Py( 0x00007faacb27cf70, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbf900a0, ), ), on_error: Raise, validator: Bool( BoolValidator { strict: false, }, ), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py( 0x00007faaaab938a0, ), path: LookupPath( [ S( "name", Py( 0x00007faaaab938d0, ), ), ], ), }, name_py: Py( 0x00007faacc099708, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbfa6480, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, ], model_name: "Rule", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055e36f768eb0, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007faac11ff6e0, ), name: "Rule", }, ), frozen: false, }, Field { name: "rule_valid", lookup_key: Simple { key: "rule_valid", py_key: Py( 0x00007faaaaa6dcb0, ), path: LookupPath( [ S( "rule_valid", Py( 0x00007faaaaa6ddf0, ), ), ], ), }, name_py: Py( 0x00007faaaab4e430, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbf90080, ), ), on_error: Raise, validator: Bool( BoolValidator { strict: false, }, ), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "decided", lookup_key: Simple { key: "decided", py_key: Py( 0x00007faaaab93960, ), path: LookupPath( [ S( "decided", Py( 0x00007faaaab93990, ), ), ], ), }, name_py: Py( 0x00007faaaab405a0, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbf90080, ), ), on_error: Raise, validator: Bool( BoolValidator { strict: false, }, ), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "exclusive", lookup_key: Simple { key: "exclusive", py_key: Py( 0x00007faaaaa6dab0, ), path: LookupPath( [ S( "exclusive", Py( 0x00007faaaaa6dfb0, ), ), ], ), }, name_py: Py( 0x00007faac8bc5c30, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faacbf900a0, ), ), on_error: Raise, validator: FunctionAfter( FunctionAfterValidator { validator: FunctionAfter( FunctionAfterValidator { validator: Bool( BoolValidator { strict: false, }, ), func: Py( 0x00007faaabff6100, ), config: Py( 0x00007faaaaa86580, ), name: "function-after[not_invalid_and_exclusive(), bool]", field_name: Some( Py( 0x00007faac8bc5c30, ), ), info_arg: true, }, ), func: Py( 0x00007faaabfc1400, ), config: Py( 0x00007faaaaa86580, ), name: "function-after[not_undecided_and_exclusive(), function-after[not_invalid_and_exclusive(), bool]]", field_name: Some( Py( 0x00007faac8bc5c30, ), ), info_arg: true, }, ), validate_default: false, copy_default: false, name: "default[function-after[not_undecided_and_exclusive(), function-after[not_invalid_and_exclusive(), bool]]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, ], model_name: "Holding", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), func: Py( 0x00007faaaabf1240, ), config: Py( 0x00007faaaaa86580, ), name: "function-before[nest_factor_fields(), model-fields]", field_name: None, info_arg: false, }, ), class: Py( 0x000055e36f76e570, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007faac11ff6e0, ), name: "Holding", }, ), frozen: false, }, Field { name: "anchors", lookup_key: Simple { key: "anchors", py_key: Py( 0x00007faaaab93a20, ), path: LookupPath( [ S( "anchors", Py( 0x00007faaaab93a50, ), ), ], ), }, name_py: Py( 0x00007faacb0bc960, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaab1d4dc0, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: DefinitionRef( DefinitionRefValidator { definition: "TextPositionSet", }, ), func: Py( 0x00007faaaab47e80, ), config: Py( 0x00007faaaaa867c0, ), name: "function-before[validate_anchors(), TextPositionSet]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: true, name: "default[function-before[validate_anchors(), TextPositionSet]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, ], model_name: "HoldingWithAnchors", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055e36f932090, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007faac11ff6e0, ), name: "HoldingWithAnchors", }, ), ), min_length: None, max_length: None, name: OnceLock( "list[HoldingWithAnchors]", ), fail_fast: false, }, ), validate_default: false, copy_default: true, name: "default[list[HoldingWithAnchors]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "named_anchors", lookup_key: Simple { key: "named_anchors", py_key: Py( 0x00007faaaaa6e030, ), path: LookupPath( [ S( "named_anchors", Py( 0x00007faaaaa6e0f0, ), ), ], ), }, name_py: Py( 0x00007faaaab63ab0, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaaaa3f980, ), ), on_error: Raise, validator: List( ListValidator { strict: false, item_validator: Some( Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "term", lookup_key: Simple { key: "term", py_key: Py( 0x00007faaaab93a80, ), path: LookupPath( [ S( "term", Py( 0x00007faaaab93ab0, ), ), ], ), }, name_py: Py( 0x00007faacc09b5e8, ), validator: Union( UnionValidator { mode: Smart, choices: [ ( DefinitionRef( DefinitionRefValidator { definition: "Entity", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Fact", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Allegation", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Pleading", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Exhibit", }, ), None, ), ( DefinitionRef( DefinitionRefValidator { definition: "Evidence", }, ), None, ), ], custom_error: None, strict: false, name: "union[Entity,Fact,Allegation,Pleading,Exhibit,Evidence]", }, ), frozen: false, }, Field { name: "anchors", lookup_key: Simple { key: "anchors", py_key: Py( 0x00007faaaab93ae0, ), path: LookupPath( [ S( "anchors", Py( 0x00007faaaab93b10, ), ), ], ), }, name_py: Py( 0x00007faacb0bc960, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaaabcb4d0, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: DefinitionRef( DefinitionRefValidator { definition: "TextPositionSet", }, ), func: Py( 0x00007faaaaa2c440, ), config: Py( 0x00007faaaaa86dc0, ), name: "function-before[validate_anchors(), TextPositionSet]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: true, name: "default[function-before[validate_anchors(), TextPositionSet]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, ], model_name: "TermWithAnchors", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055e36f942d20, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007faac11ff6e0, ), name: "TermWithAnchors", }, ), ), min_length: None, max_length: None, name: OnceLock( "list[TermWithAnchors]", ), fail_fast: false, }, ), validate_default: false, copy_default: true, name: "default[list[TermWithAnchors]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, Field { name: "enactment_anchors", lookup_key: Simple { key: "enactment_anchors", py_key: Py( 0x00007faaaaa6e170, ), path: LookupPath( [ S( "enactment_anchors", Py( 0x00007faaaaa6def0, ), ), ], ), }, name_py: Py( 0x00007faaaab63b30, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaaaa3f480, ), ), on_error: Raise, validator: List( ListValidator { strict: false, item_validator: Some( Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "passage", lookup_key: Simple { key: "passage", py_key: Py( 0x00007faaaab93b40, ), path: LookupPath( [ S( "passage", Py( 0x00007faaaab93b70, ), ), ], ), }, name_py: Py( 0x00007faac0502940, ), validator: DefinitionRef( DefinitionRefValidator { definition: "...", }, ), frozen: false, }, Field { name: "anchors", lookup_key: Simple { key: "anchors", py_key: Py( 0x00007faaaab93ba0, ), path: LookupPath( [ S( "anchors", Py( 0x00007faaaab93bd0, ), ), ], ), }, name_py: Py( 0x00007faacb0bc960, ), validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007faaaabcb890, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: DefinitionRef( DefinitionRefValidator { definition: "TextPositionSet", }, ), func: Py( 0x00007faaaaa3e4c0, ), config: Py( 0x00007faaaaa87240, ), name: "function-before[validate_anchors(), TextPositionSet]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: true, name: "default[function-before[validate_anchors(), TextPositionSet]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, ], model_name: "EnactmentWithAnchors", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055e36f96f2d0, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007faac11ff6e0, ), name: "EnactmentWithAnchors", }, ), ), min_length: None, max_length: None, name: OnceLock( "list[EnactmentWithAnchors]", ), fail_fast: false, }, ), validate_default: false, copy_default: true, name: "default[list[EnactmentWithAnchors]]", undefined: Py( 0x00007faac11ff6e0, ), }, ), frozen: false, }, ], model_name: "AnchoredHoldings", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true, }, ), class: Py( 0x000055e36f974a10, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007faac11ff6e0, ), name: "AnchoredHoldings", }, ), definitions=[Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "sign", lookup_key: Simple { key: "sign", py_key: Py(0x7faaaab92760), path: LookupPath([S("sign", Py(0x7faaaab92790))]) }, name_py: Py(0x7faacb49ecd0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac0370ff0)), on_error: Raise, validator: FunctionAfter(FunctionAfterValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), func: Py(0x7faaabe47d40), config: Py(0x7faaaaa90800), name: "function-after[check_sign(), str]", field_name: None, info_arg: false }), validate_default: false, copy_default: false, name: "default[function-after[check_sign(), str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "include_negatives", lookup_key: Simple { key: "include_negatives", py_key: Py(0x7faaaaa5d270), path: LookupPath([S("include_negatives", Py(0x7faaaaa5d2f0))]) }, name_py: Py(0x7faac037d2f0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Bool(BoolValidator { strict: false }), name: "nullable[bool]" }), validate_default: false, copy_default: false, name: "default[nullable[bool]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "quantity", lookup_key: Simple { key: "quantity", py_key: Py(0x7faaaaa5d1f0), path: LookupPath([S("quantity", Py(0x7faaaaa5d170))]) }, name_py: Py(0x7faac037db70), validator: Decimal(DecimalValidator { strict: false, allow_inf_nan: false, check_digits: false, multiple_of: None, le: None, lt: None, ge: None, gt: None, max_digits: None, decimal_places: None }), frozen: false }], model_name: "DecimalRange", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36f6b59f0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "DecimalRange" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "positions", lookup_key: Simple { key: "positions", py_key: Py(0x7faaaaa5dbb0), path: LookupPath([S("positions", Py(0x7faaaaa5db30))]) }, name_py: Py(0x7faacb39e5f0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac041fec0)), on_error: Raise, validator: FunctionAfter(FunctionAfterValidator { validator: FunctionBefore(FunctionBeforeValidator { validator: List(ListValidator { strict: false, item_validator: Some(DefinitionRef(DefinitionRefValidator { definition: "function-after[start_less_than_end(), TextPositionSelector]" })), min_length: None, max_length: None, name: OnceLock(<uninit>), fail_fast: false }), func: Py(0x7faac041e4c0), config: Py(0x7faaaaa98740), name: "function-before[is_sequence(), list[...]]", field_name: None, info_arg: false }), func: Py(0x7faac041e480), config: Py(0x7faaaaa98740), name: "function-after[order_of_selectors(), function-before[is_sequence(), list[...]]]", field_name: None, info_arg: false }), validate_default: false, copy_default: true, name: "default[function-after[order_of_selectors(), function-before[is_sequence(), list[...]]]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "quotes", lookup_key: Simple { key: "quotes", py_key: Py(0x7faaaab931b0), path: LookupPath([S("quotes", Py(0x7faaaab931e0))]) }, name_py: Py(0x7faacb040f90), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac11c8e80)), on_error: Raise, validator: FunctionBefore(FunctionBeforeValidator { validator: List(ListValidator { strict: false, item_validator: Some(DefinitionRef(DefinitionRefValidator { definition: "TextQuoteSelector" })), min_length: None, max_length: None, name: OnceLock(<uninit>), fail_fast: false }), func: Py(0x7faac041e540), config: Py(0x7faaaaa98740), name: "function-before[quote_selectors_are_in_list(), list[...]]", field_name: None, info_arg: false }), validate_default: false, copy_default: true, name: "default[function-before[quote_selectors_are_in_list(), list[...]]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "TextPositionSet", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36e99b2d0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "TextPositionSet" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "node", lookup_key: Simple { key: "node", py_key: Py(0x7faaaab933f0), path: LookupPath([S("node", Py(0x7faaaab93420))]) }, name_py: Py(0x7faacb37f3c0), validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), frozen: false }, Field { name: "start_date", lookup_key: Simple { key: "start_date", py_key: Py(0x7faaaaa5c9b0), path: LookupPath([S("start_date", Py(0x7faaaaa5d030))]) }, name_py: Py(0x7faac059c970), validator: Date(DateValidator { strict: false, constraints: None }), frozen: false }, Field { name: "heading", lookup_key: Simple { key: "heading", py_key: Py(0x7faaaab93450), path: LookupPath([S("heading", Py(0x7faaaab93480))]) }, name_py: Py(0x7faacb5235d0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacc092ed0)), on_error: Raise, validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), validate_default: false, copy_default: false, name: "default[str]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "text_version", lookup_key: Simple { key: "text_version", py_key: Py(0x7faaaaa5d070), path: LookupPath([S("text_version", Py(0x7faaaaa5de30))]) }, name_py: Py(0x7faac059c630), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: FunctionBefore(FunctionBeforeValidator { validator: Nullable(NullableValidator { validator: DefinitionRef(DefinitionRefValidator { definition: "TextVersion" }), name: "nullable[TextVersion]" }), func: Py(0x7faac0569fc0), config: Py(0x7faaaaa9a7c0), name: "function-before[make_text_version_from_str(), nullable[TextVersion]]", field_name: None, info_arg: false }), validate_default: false, copy_default: false, name: "default[function-before[make_text_version_from_str(), nullable[TextVersion]]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "end_date", lookup_key: Simple { key: "end_date", py_key: Py(0x7faaaaa5d6f0), path: LookupPath([S("end_date", Py(0x7faaaab46db0))]) }, name_py: Py(0x7faac933d530), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Date(DateValidator { strict: false, constraints: None }), name: "nullable[date]" }), validate_default: false, copy_default: false, name: "default[nullable[date]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "first_published", lookup_key: Simple { key: "first_published", py_key: Py(0x7faaaaa6f270), path: LookupPath([S("first_published", Py(0x7faaaaa6d6f0))]) }, name_py: Py(0x7faac059c5f0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Date(DateValidator { strict: false, constraints: None }), name: "nullable[date]" }), validate_default: false, copy_default: false, name: "default[nullable[date]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "earliest_in_db", lookup_key: Simple { key: "earliest_in_db", py_key: Py(0x7faaaaa6d870), path: LookupPath([S("earliest_in_db", Py(0x7faaaaa6da30))]) }, name_py: Py(0x7faac059c5b0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Date(DateValidator { strict: false, constraints: None }), name: "nullable[date]" }), validate_default: false, copy_default: false, name: "default[nullable[date]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "anchors", lookup_key: Simple { key: "anchors", py_key: Py(0x7faaaab934b0), path: LookupPath([S("anchors", Py(0x7faaaab934e0))]) }, name_py: Py(0x7faacb0bc960), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac0575340)), on_error: Raise, validator: Union(UnionValidator { mode: Smart, choices: [(DefinitionRef(DefinitionRefValidator { definition: "TextPositionSet" }), None), (List(ListValidator { strict: false, item_validator: Some(Union(UnionValidator { mode: Smart, choices: [(DefinitionRef(DefinitionRefValidator { definition: "function-after[start_less_than_end(), TextPositionSelector]" }), None), (DefinitionRef(DefinitionRefValidator { definition: "TextQuoteSelector" }), None)], custom_error: None, strict: false, name: "union[function-after[start_less_than_end(), TextPositionSelector],TextQuoteSelector]" })), min_length: None, max_length: None, name: OnceLock("list[union[function-after[start_less_than_end(), TextPositionSelector],TextQuoteSelector]]"), fail_fast: false }), None)], custom_error: None, strict: false, name: "union[TextPositionSet,list[union[function-after[start_less_than_end(), TextPositionSelector],TextQuoteSelector]]]" }), validate_default: false, copy_default: true, name: "default[union[TextPositionSet,list[union[function-after[start_less_than_end(), TextPositionSelector],TextQuoteSelector]]]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "citations", lookup_key: Simple { key: "citations", py_key: Py(0x7faaaaa6d5f0), path: LookupPath([S("citations", Py(0x7faaaaa6d830))]) }, name_py: Py(0x7faacaffd0b0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac0576e40)), on_error: Raise, validator: List(ListValidator { strict: false, item_validator: Some(DefinitionRef(DefinitionRefValidator { definition: "CrossReference" })), min_length: None, max_length: None, name: OnceLock("list[CrossReference]"), fail_fast: false }), validate_default: false, copy_default: true, name: "default[list[CrossReference]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py(0x7faaaab93510), path: LookupPath([S("name", Py(0x7faaaab93540))]) }, name_py: Py(0x7faacc099708), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacc092ed0)), on_error: Raise, validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), validate_default: false, copy_default: false, name: "default[str]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "children", lookup_key: Simple { key: "children", py_key: Py(0x7faaaaa6d9f0), path: LookupPath([S("children", Py(0x7faaaaa6da70))]) }, name_py: Py(0x7faacb6197f0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac056ad00)), on_error: Raise, validator: Union(UnionValidator { mode: Smart, choices: [(List(ListValidator { strict: false, item_validator: Some(DefinitionRef(DefinitionRefValidator { definition: "..." })), min_length: None, max_length: None, name: OnceLock(<uninit>), fail_fast: false }), None), (List(ListValidator { strict: false, item_validator: Some(Str(StrValidator { strict: false, coerce_numbers_to_str: false })), min_length: None, max_length: None, name: OnceLock("list[str]"), fail_fast: false }), None)], custom_error: None, strict: false, name: "union[list[...],list[str]]" }), validate_default: false, copy_default: true, name: "default[union[list[...],list[str]]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "Enactment", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36ea680d0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "Enactment" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "enactment", lookup_key: Simple { key: "enactment", py_key: Py(0x7faaaaa6d970), path: LookupPath([S("enactment", Py(0x7faaaaa6d9b0))]) }, name_py: Py(0x7faac059b5b0), validator: DefinitionRef(DefinitionRefValidator { definition: "..." }), frozen: false }, Field { name: "selection", lookup_key: Simple { key: "selection", py_key: Py(0x7faaaaa6d770), path: LookupPath([S("selection", Py(0x7faaaaa6dcf0))]) }, name_py: Py(0x7faac0366070), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac159a1c0)), on_error: Raise, validator: DefinitionRef(DefinitionRefValidator { definition: "TextPositionSet" }), validate_default: false, copy_default: true, name: "default[TextPositionSet]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "EnactmentPassage", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36ea7e500), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "EnactmentPassage" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "generic", lookup_key: Simple { key: "generic", py_key: Py(0x7faaaab92f10), path: LookupPath([S("generic", Py(0x7faaaab92f40))]) }, name_py: Py(0x7faaca607420), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "absent", lookup_key: Simple { key: "absent", py_key: Py(0x7faaaab92f70), path: LookupPath([S("absent", Py(0x7faaaab92fa0))]) }, name_py: Py(0x7faaca34fc30), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "fact", lookup_key: Simple { key: "fact", py_key: Py(0x7faaaab92fd0), path: LookupPath([S("fact", Py(0x7faaaab93000))]) }, name_py: Py(0x7faac01812f0), validator: DefinitionRef(DefinitionRefValidator { definition: "Fact" }), frozen: false }, Field { name: "pleading", lookup_key: Simple { key: "pleading", py_key: Py(0x7faaaaa5dd70), path: LookupPath([S("pleading", Py(0x7faaaaa5dc30))]) }, name_py: Py(0x7faaaabbb7b0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: DefinitionRef(DefinitionRefValidator { definition: "Pleading" }), name: "nullable[Pleading]" }), validate_default: false, copy_default: false, name: "default[nullable[Pleading]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py(0x7faaaab93030), path: LookupPath([S("name", Py(0x7faaaab93060))]) }, name_py: Py(0x7faacc099708), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), name: "nullable[str]" }), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "Allegation", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36f832de0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "Allegation" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "sign", lookup_key: Simple { key: "sign", py_key: Py(0x7faaaab927c0), path: LookupPath([S("sign", Py(0x7faaaab927f0))]) }, name_py: Py(0x7faacb49ecd0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac0370ff0)), on_error: Raise, validator: FunctionAfter(FunctionAfterValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), func: Py(0x7faaab0eefc0), config: Py(0x7faaaaa90dc0), name: "function-after[check_sign(), str]", field_name: None, info_arg: false }), validate_default: false, copy_default: false, name: "default[function-after[check_sign(), str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "include_negatives", lookup_key: Simple { key: "include_negatives", py_key: Py(0x7faaaaa5d870), path: LookupPath([S("include_negatives", Py(0x7faaaaa5d570))]) }, name_py: Py(0x7faac037d2f0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Bool(BoolValidator { strict: false }), name: "nullable[bool]" }), validate_default: false, copy_default: false, name: "default[nullable[bool]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "quantity_magnitude", lookup_key: Simple { key: "quantity_magnitude", py_key: Py(0x7faaaaa5d0f0), path: LookupPath([S("quantity_magnitude", Py(0x7faaaaa5d130))]) }, name_py: Py(0x7faac037d9f0), validator: Decimal(DecimalValidator { strict: false, allow_inf_nan: false, check_digits: false, multiple_of: None, le: None, lt: None, ge: None, gt: None, max_digits: None, decimal_places: None }), frozen: false }, Field { name: "quantity_units", lookup_key: Simple { key: "quantity_units", py_key: Py(0x7faaaaa5d0b0), path: LookupPath([S("quantity_units", Py(0x7faaaaa5d3b0))]) }, name_py: Py(0x7faac037da30), validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), frozen: false }], model_name: "UnitRange", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36f6d85d0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "UnitRange" }), Model(ModelValidator { revalidate: Never, validator: FunctionBefore(FunctionBeforeValidator { validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "generic", lookup_key: Simple { key: "generic", py_key: Py(0x7faaaab92490), path: LookupPath([S("generic", Py(0x7faaaab923a0))]) }, name_py: Py(0x7faaca607420), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf90080)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "absent", lookup_key: Simple { key: "absent", py_key: Py(0x7faaaab92220), path: LookupPath([S("absent", Py(0x7faaaab922b0))]) }, name_py: Py(0x7faaca34fc30), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py(0x7faaaab909f0), path: LookupPath([S("name", Py(0x7faaaab926a0))]) }, name_py: Py(0x7faacc099708), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacc092ed0)), on_error: Raise, validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), validate_default: false, copy_default: false, name: "default[str]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "plural", lookup_key: Simple { key: "plural", py_key: Py(0x7faaaab92700), path: LookupPath([S("plural", Py(0x7faaaab92730))]) }, name_py: Py(0x7faacb546370), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "Entity", extra_behavior: Forbid, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), func: Py(0x7faac036cbc0), config: Py(0x7faaaaa90300), name: "function-before[validate_type(), model-fields]", field_name: None, info_arg: false }), class: Py(0x55e36eacfd20), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "Entity" }), Model(ModelValidator { revalidate: Never, validator: FunctionBefore(FunctionBeforeValidator { validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "generic", lookup_key: Simple { key: "generic", py_key: Py(0x7faaaab92d90), path: LookupPath([S("generic", Py(0x7faaaab92dc0))]) }, name_py: Py(0x7faaca607420), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "absent", lookup_key: Simple { key: "absent", py_key: Py(0x7faaaab92df0), path: LookupPath([S("absent", Py(0x7faaaab92e20))]) }, name_py: Py(0x7faaca34fc30), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "predicate", lookup_key: Simple { key: "predicate", py_key: Py(0x7faaaaa5d830), path: LookupPath([S("predicate", Py(0x7faaaaa5d730))]) }, name_py: Py(0x7faacb39c6b0), validator: Union(UnionValidator { mode: Smart, choices: [(DefinitionRef(DefinitionRefValidator { definition: "Predicate" }), None), (DefinitionRef(DefinitionRefValidator { definition: "Comparison" }), None)], custom_error: None, strict: false, name: "union[Predicate,Comparison]" }), frozen: false }, Field { name: "terms", lookup_key: Simple { key: "terms", py_key: Py(0x7faaaab92e50), path: LookupPath([S("terms", Py(0x7faaaab92e80))]) }, name_py: Py(0x7faaca27c660), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faaaaba7e00)), on_error: Raise, validator: FunctionAfter(FunctionAfterValidator { validator: FunctionBefore(FunctionBeforeValidator { validator: List(ListValidator { strict: false, item_validator: Some(Union(UnionValidator { mode: Smart, choices: [(DefinitionRef(DefinitionRefValidator { definition: "Entity" }), None), (DefinitionRef(DefinitionRefValidator { definition: "Fact" }), None), (DefinitionRef(DefinitionRefValidator { definition: "Allegation" }), None), (DefinitionRef(DefinitionRefValidator { definition: "Pleading" }), None), (DefinitionRef(DefinitionRefValidator { definition: "Exhibit" }), None), (DefinitionRef(DefinitionRefValidator { definition: "Evidence" }), None)], custom_error: None, strict: false, name: "union[Entity,...,...,Pleading,Exhibit,Evidence]" })), min_length: None, max_length: None, name: OnceLock("list[union[Entity,...,...,Pleading,Exhibit,Evidence]]"), fail_fast: false }), func: Py(0x7faaaaba6b80), config: Py(0x7faaaaa93580), name: "function-before[terms_as_sequence(), list[union[Entity,...,...,Pleading,Exhibit,Evidence]]]", field_name: Some(Py(0x7faaca27c660)), info_arg: true }), func: Py(0x7faaaaba53c0), config: Py(0x7faaaaa93580), name: "function-after[_validate_terms(), function-before[terms_as_sequence(), list[union[Entity,...,...,Pleading,Exhibit,Evidence]]]]", field_name: Some(Py(0x7faaca27c660)), info_arg: true }), validate_default: false, copy_default: true, name: "default[function-after[_validate_terms(), function-before[terms_as_sequence(), list[union[Entity,...,...,Pleading,Exhibit,Evidence]]]]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py(0x7faaaab92eb0), path: LookupPath([S("name", Py(0x7faaaab92ee0))]) }, name_py: Py(0x7faacc099708), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacc092ed0)), on_error: Raise, validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), validate_default: false, copy_default: false, name: "default[str]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "standard_of_proof", lookup_key: Simple { key: "standard_of_proof", py_key: Py(0x7faaaaa5def0), path: LookupPath([S("standard_of_proof", Py(0x7faaaaa5ddf0))]) }, name_py: Py(0x7faaaab7a230), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: FunctionAfter(FunctionAfterValidator { validator: Nullable(NullableValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), name: "nullable[str]" }), func: Py(0x7faaaaba6c40), config: Py(0x7faaaaa93580), name: "function-after[validate_standard_of_proof(), nullable[str]]", field_name: None, info_arg: false }), validate_default: false, copy_default: false, name: "default[function-after[validate_standard_of_proof(), nullable[str]]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "Fact", extra_behavior: Forbid, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), func: Py(0x7faaab878840), config: Py(0x7faaaaa93580), name: "function-before[nest_predicate_fields(), model-fields]", field_name: None, info_arg: false }), class: Py(0x55e36f72dea0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "Fact" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "sign", lookup_key: Simple { key: "sign", py_key: Py(0x7faaaab92850), path: LookupPath([S("sign", Py(0x7faaaab92880))]) }, name_py: Py(0x7faacb49ecd0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac0370ff0)), on_error: Raise, validator: FunctionAfter(FunctionAfterValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), func: Py(0x7faaaaf0eb80), config: Py(0x7faaaaa912c0), name: "function-after[check_sign(), str]", field_name: None, info_arg: false }), validate_default: false, copy_default: false, name: "default[function-after[check_sign(), str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "include_negatives", lookup_key: Simple { key: "include_negatives", py_key: Py(0x7faaaaa5d370), path: LookupPath([S("include_negatives", Py(0x7faaaaa5d330))]) }, name_py: Py(0x7faac037d2f0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Bool(BoolValidator { strict: false }), name: "nullable[bool]" }), validate_default: false, copy_default: false, name: "default[nullable[bool]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "quantity", lookup_key: Simple { key: "quantity", py_key: Py(0x7faaaaa5d930), path: LookupPath([S("quantity", Py(0x7faaaaa5d8b0))]) }, name_py: Py(0x7faac037db70), validator: Date(DateValidator { strict: false, constraints: None }), frozen: false }], model_name: "DateRange", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36f6d4d10), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "DateRange" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "passages", lookup_key: Simple { key: "passages", py_key: Py(0x7faaaaa6d730), path: LookupPath([S("passages", Py(0x7faaaaa6d5b0))]) }, name_py: Py(0x7faac03560f0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faac0530f00)), on_error: Raise, validator: FunctionAfter(FunctionAfterValidator { validator: FunctionBefore(FunctionBeforeValidator { validator: List(ListValidator { strict: false, item_validator: Some(DefinitionRef(DefinitionRefValidator { definition: "..." })), min_length: None, max_length: None, name: OnceLock(<uninit>), fail_fast: false }), func: Py(0x7faac053c7c0), config: Py(0x7faaaaa9ab80), name: "function-before[consolidate_passages(), list[...]]", field_name: None, info_arg: false }), func: Py(0x7faac832c340), config: Py(0x7faaaaa9ab80), name: "function-after[sort_passages(), function-before[consolidate_passages(), list[...]]]", field_name: None, info_arg: false }), validate_default: false, copy_default: true, name: "default[function-after[sort_passages(), function-before[consolidate_passages(), list[...]]]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "EnactmentGroup", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36eab1ca0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "EnactmentGroup" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "target_uri", lookup_key: Simple { key: "target_uri", py_key: Py(0x7faaaaa5dbf0), path: LookupPath([S("target_uri", Py(0x7faaaaa5daf0))]) }, name_py: Py(0x7faac059cb30), validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), frozen: false }, Field { name: "target_url", lookup_key: Simple { key: "target_url", py_key: Py(0x7faaaaa5da70), path: LookupPath([S("target_url", Py(0x7faaaaa5d6b0))]) }, name_py: Py(0x7faac059caf0), validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), frozen: false }, Field { name: "reference_text", lookup_key: Simple { key: "reference_text", py_key: Py(0x7faaaaa5d670), path: LookupPath([S("reference_text", Py(0x7faaaaa5d630))]) }, name_py: Py(0x7faac059cab0), validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), frozen: false }, Field { name: "target_node", lookup_key: Simple { key: "target_node", py_key: Py(0x7faaaaa5deb0), path: LookupPath([S("target_node", Py(0x7faaaaa5df30))]) }, name_py: Py(0x7faaca282b70), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Int(IntValidator { strict: false }), name: "nullable[int]" }), validate_default: false, copy_default: false, name: "default[nullable[int]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "CrossReference", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36ea585f0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "CrossReference" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "content", lookup_key: Simple { key: "content", py_key: Py(0x7faaaab93090), path: LookupPath([S("content", Py(0x7faaaab930c0))]) }, name_py: Py(0x7faacb37f060), validator: FunctionAfter(FunctionAfterValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), func: Py(0x7faac056b100), config: Py(0x7faaaaa981c0), name: "function-after[content_exists(), str]", field_name: None, info_arg: false }), frozen: false }, Field { name: "url", lookup_key: Simple { key: "url", py_key: Py(0x7faaaab930f0), path: LookupPath([S("url", Py(0x7faaaab93120))]) }, name_py: Py(0x7faacb163c90), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), name: "nullable[str]" }), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "id", lookup_key: Simple { key: "id", py_key: Py(0x7faaaab93150), path: LookupPath([S("id", Py(0x7faaaab93180))]) }, name_py: Py(0x7faacc098470), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Int(IntValidator { strict: false }), name: "nullable[int]" }), validate_default: false, copy_default: false, name: "default[nullable[int]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "TextVersion", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36ea61300), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "TextVersion" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "generic", lookup_key: Simple { key: "generic", py_key: Py(0x7faaaab92a60), path: LookupPath([S("generic", Py(0x7faaaab92a90))]) }, name_py: Py(0x7faaca607420), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "absent", lookup_key: Simple { key: "absent", py_key: Py(0x7faaaab92ac0), path: LookupPath([S("absent", Py(0x7faaaab92b20))]) }, name_py: Py(0x7faaca34fc30), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "offered_by", lookup_key: Simple { key: "offered_by", py_key: Py(0x7faaaaa5d530), path: LookupPath([S("offered_by", Py(0x7faaaaa5d4b0))]) }, name_py: Py(0x7faaaaba6bf0), validator: DefinitionRef(DefinitionRefValidator { definition: "Entity" }), frozen: false }, Field { name: "form", lookup_key: Simple { key: "form", py_key: Py(0x7faaaab92b50), path: LookupPath([S("form", Py(0x7faaaab92b80))]) }, name_py: Py(0x7faac9b2db00), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), name: "nullable[str]" }), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "statement", lookup_key: Simple { key: "statement", py_key: Py(0x7faaaaa5d430), path: LookupPath([S("statement", Py(0x7faaaaa5d3f0))]) }, name_py: Py(0x7faacc09b098), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: DefinitionRef(DefinitionRefValidator { definition: "Fact" }), name: "nullable[...]" }), validate_default: false, copy_default: false, name: "default[nullable[...]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "statement_attribution", lookup_key: Simple { key: "statement_attribution", py_key: Py(0x7faaaaa5d8f0), path: LookupPath([S("statement_attribution", Py(0x7faaaaa5d7f0))]) }, name_py: Py(0x7faaaabbaef0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: DefinitionRef(DefinitionRefValidator { definition: "Entity" }), name: "nullable[Entity]" }), validate_default: false, copy_default: false, name: "default[nullable[Entity]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py(0x7faaaab92bb0), path: LookupPath([S("name", Py(0x7faaaab92be0))]) }, name_py: Py(0x7faacc099708), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), name: "nullable[str]" }), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "Exhibit", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36f830bc0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "Exhibit" }), FunctionAfter(FunctionAfterValidator { validator: Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "start", lookup_key: Simple { key: "start", py_key: Py(0x7faaaab93210), path: LookupPath([S("start", Py(0x7faaaab93240))]) }, name_py: Py(0x7faacc09b068), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacc08dbc8)), on_error: Raise, validator: FunctionAfter(FunctionAfterValidator { validator: Int(IntValidator { strict: false }), func: Py(0x7faac041fb00), config: Py(0x7faaaaa98c00), name: "function-after[start_not_negative(), int]", field_name: None, info_arg: false }), validate_default: false, copy_default: false, name: "default[function-after[start_not_negative(), int]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "end", lookup_key: Simple { key: "end", py_key: Py(0x7faaaab93270), path: LookupPath([S("end", Py(0x7faaaab932a0))]) }, name_py: Py(0x7faacc0976e8), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Int(IntValidator { strict: false }), name: "nullable[int]" }), validate_default: false, copy_default: false, name: "default[nullable[int]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "TextPositionSelector", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36e997fd0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "TextPositionSelector" }), func: Py(0x7faac0b9b380), config: Py(0x7faaaaa6d7c0), name: "function-after[start_less_than_end(), TextPositionSelector]", field_name: None, info_arg: false }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "content", lookup_key: Simple { key: "content", py_key: Py(0x7faaaab672a0), path: LookupPath([S("content", Py(0x7faaaab641b0))]) }, name_py: Py(0x7faacb37f060), validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), frozen: false }, Field { name: "truth", lookup_key: Simple { key: "truth", py_key: Py(0x7faaaab64090), path: LookupPath([S("truth", Py(0x7faaaab92430))]) }, name_py: Py(0x7faacb4b1a40), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf90080)), on_error: Raise, validator: Nullable(NullableValidator { validator: Bool(BoolValidator { strict: false }), name: "nullable[bool]" }), validate_default: false, copy_default: false, name: "default[nullable[bool]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "Predicate", extra_behavior: Forbid, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36ead83c0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "Predicate" }), Model(ModelValidator { revalidate: Never, validator: FunctionBefore(FunctionBeforeValidator { validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "generic", lookup_key: Simple { key: "generic", py_key: Py(0x7faaaab92c10), path: LookupPath([S("generic", Py(0x7faaaab92c40))]) }, name_py: Py(0x7faaca607420), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "absent", lookup_key: Simple { key: "absent", py_key: Py(0x7faaaab92c70), path: LookupPath([S("absent", Py(0x7faaaab92ca0))]) }, name_py: Py(0x7faaca34fc30), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "exhibit", lookup_key: Simple { key: "exhibit", py_key: Py(0x7faaaab92cd0), path: LookupPath([S("exhibit", Py(0x7faaaab92d00))]) }, name_py: Py(0x7faaaab90a80), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: DefinitionRef(DefinitionRefValidator { definition: "Exhibit" }), name: "nullable[Exhibit]" }), validate_default: false, copy_default: false, name: "default[nullable[Exhibit]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "to_effect", lookup_key: Simple { key: "to_effect", py_key: Py(0x7faaaaa5d5b0), path: LookupPath([S("to_effect", Py(0x7faaaaa5d7b0))]) }, name_py: Py(0x7faaaabbb470), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: DefinitionRef(DefinitionRefValidator { definition: "Fact" }), name: "nullable[...]" }), validate_default: false, copy_default: false, name: "default[nullable[...]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py(0x7faaaab92d30), path: LookupPath([S("name", Py(0x7faaaab92d60))]) }, name_py: Py(0x7faacc099708), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), name: "nullable[str]" }), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "Evidence", extra_behavior: Forbid, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), func: Py(0x7faaab3993c0), config: Py(0x7faaaaa92940), name: "function-before[check_type_field(), model-fields]", field_name: None, info_arg: false }), class: Py(0x55e36f7469f0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "Evidence" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "exact", lookup_key: Simple { key: "exact", py_key: Py(0x7faaaab932d0), path: LookupPath([S("exact", Py(0x7faaaab93300))]) }, name_py: Py(0x7faacb423480), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacc092ed0)), on_error: Raise, validator: FunctionBefore(FunctionBeforeValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), func: Py(0x7faac042d280), config: Py(0x7faaaaa99200), name: "function-before[no_none_for_prefix(), str]", field_name: None, info_arg: false }), validate_default: false, copy_default: false, name: "default[function-before[no_none_for_prefix(), str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "prefix", lookup_key: Simple { key: "prefix", py_key: Py(0x7faaaab93330), path: LookupPath([S("prefix", Py(0x7faaaab93360))]) }, name_py: Py(0x7faacc050080), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacc092ed0)), on_error: Raise, validator: FunctionBefore(FunctionBeforeValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), func: Py(0x7faac042d280), config: Py(0x7faaaaa99200), name: "function-before[no_none_for_prefix(), str]", field_name: None, info_arg: false }), validate_default: false, copy_default: false, name: "default[function-before[no_none_for_prefix(), str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "suffix", lookup_key: Simple { key: "suffix", py_key: Py(0x7faaaab93390), path: LookupPath([S("suffix", Py(0x7faaaab933c0))]) }, name_py: Py(0x7faacc05bfc0), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacc092ed0)), on_error: Raise, validator: FunctionBefore(FunctionBeforeValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), func: Py(0x7faac042d280), config: Py(0x7faaaaa99200), name: "function-before[no_none_for_prefix(), str]", field_name: None, info_arg: false }), validate_default: false, copy_default: false, name: "default[function-before[no_none_for_prefix(), str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "TextQuoteSelector", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36e9950d0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "TextQuoteSelector" }), Model(ModelValidator { revalidate: Never, validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "generic", lookup_key: Simple { key: "generic", py_key: Py(0x7faaaab928b0), path: LookupPath([S("generic", Py(0x7faaaab928e0))]) }, name_py: Py(0x7faaca607420), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "absent", lookup_key: Simple { key: "absent", py_key: Py(0x7faaaab92910), path: LookupPath([S("absent", Py(0x7faaaab92970))]) }, name_py: Py(0x7faaca34fc30), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf900a0)), on_error: Raise, validator: Bool(BoolValidator { strict: false }), validate_default: false, copy_default: false, name: "default[bool]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "filer", lookup_key: Simple { key: "filer", py_key: Py(0x7faaaab929a0), path: LookupPath([S("filer", Py(0x7faaaab929d0))]) }, name_py: Py(0x7faaaab926d0), validator: DefinitionRef(DefinitionRefValidator { definition: "Entity" }), frozen: false }, Field { name: "name", lookup_key: Simple { key: "name", py_key: Py(0x7faaaab92a00), path: LookupPath([S("name", Py(0x7faaaab92a30))]) }, name_py: Py(0x7faacc099708), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbfa6480)), on_error: Raise, validator: Nullable(NullableValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), name: "nullable[str]" }), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }], model_name: "Pleading", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), class: Py(0x55e36f7152c0), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "Pleading" }), Model(ModelValidator { revalidate: Never, validator: FunctionBefore(FunctionBeforeValidator { validator: ModelFields(ModelFieldsValidator { fields: [Field { name: "content", lookup_key: Simple { key: "content", py_key: Py(0x7faaaab92400), path: LookupPath([S("content", Py(0x7faaaab92460))]) }, name_py: Py(0x7faacb37f060), validator: FunctionAfter(FunctionAfterValidator { validator: Str(StrValidator { strict: false, coerce_numbers_to_str: false }), func: Py(0x7faaab4f3c40), config: Py(0x7faaaaa87cc0), name: "function-after[content_ends_with_was(), str]", field_name: None, info_arg: false }), frozen: false }, Field { name: "truth", lookup_key: Simple { key: "truth", py_key: Py(0x7faaaab924f0), path: LookupPath([S("truth", Py(0x7faaaab92370))]) }, name_py: Py(0x7faacb4b1a40), validator: WithDefault(WithDefaultValidator { default: Default(Py(0x7faacbf90080)), on_error: Raise, validator: Nullable(NullableValidator { validator: Bool(BoolValidator { strict: false }), name: "nullable[bool]" }), validate_default: false, copy_default: false, name: "default[nullable[bool]]", undefined: Py(0x7faac11ff6e0) }), frozen: false }, Field { name: "quantity_range", lookup_key: Simple { key: "quantity_range", py_key: Py(0x7faaaaa5d2b0), path: LookupPath([S("quantity_range", Py(0x7faaaaa5d5f0))]) }, name_py: Py(0x7faac037e6b0), validator: Union(UnionValidator { mode: Smart, choices: [(DefinitionRef(DefinitionRefValidator { definition: "..." }), None), (DefinitionRef(DefinitionRefValidator { definition: "..." }), None), (DefinitionRef(DefinitionRefValidator { definition: "..." }), None)], custom_error: None, strict: false, name: "union[...,...,...]" }), frozen: false }], model_name: "Comparison", extra_behavior: Ignore, extras_validator: None, strict: false, from_attributes: false, loc_by_alias: true }), func: Py(0x7faaab4f3340), config: Py(0x7faaaaa87cc0), name: "function-before[set_quantity_range(), model-fields]", field_name: None, info_arg: false }), class: Py(0x55e36f6b7310), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py(0x7faac11ff6e0), name: "Comparison" })], cache_strings=True)
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__: ClassVar[Signature] = <Signature (*, holdings: List[authorityspoke.opinions.HoldingWithAnchors] = [], named_anchors: List[authorityspoke.opinions.TermWithAnchors] = [], enactment_anchors: List[authorityspoke.opinions.EnactmentWithAnchors] = []) -> None>
The synthesized __init__ [Signature][inspect.Signature] of the model.
- __weakref__
list of weak references to the object
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].