SegmentationInput#
- class caf.base.zoning.SegmentationInput(*, naming_order, enum_segments=<factory>, custom_segments=<factory>, subsets=<factory>)[source]#
Bases:
BaseConfigInput class for segmentation objects.
- Parameters:
enum_segments (list[SegmentsSuper]) – Provide as strings matching enumerations in SegmentsSuper. In 99% of cases segments should be provided in this form. If a segment doesn’t exist in the enumeration it should usually be added.
subsets (dict[str, list[int]]) – Define any segments you want subsets of. Keys should match values in ‘enum_segments’, values should be lists defining values from the segment which should be included.
custom_segments (list[Segment]) – User defined segments which don’t appear in SegmentsSuper. As stated, in almost all cases a missing segment should be added to that class, and this option is a contingency.
naming_order (list[str]) – The naming order of the segments. This primarily affects the index order of the multi-index formed from the segmentation.
Attributes
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
Get extra fields set during validation.
Returns the set of fields that have been explicitly set on this model instance.
Methods
__init__(**data)Create a new model by parsing and validating input data from keyword arguments.
construct([_fields_set])copy(*[, include, exclude, update, deep])Returns a copy of the model.
dict(*[, include, exclude, by_alias, ...])enums()Validate the subsets match segments.
from_orm(obj)from_yaml(text)Parse class attributes from YAML text.
json(*[, include, exclude, by_alias, ...])load_yaml(path)Read YAML file and load the data using from_yaml.
model_construct([_fields_set])Creates a new instance of the Model class with validated data.
model_copy(*[, update, deep])!!! abstract "Usage Documentation"
model_dump(*[, mode, include, exclude, ...])!!! abstract "Usage Documentation"
model_dump_json(*[, indent, ensure_ascii, ...])!!! abstract "Usage Documentation"
model_json_schema([by_alias, ref_template, ...])Generates a JSON schema for a model class.
model_parametrized_name(params)Compute the class name for parametrizations of generic classes.
model_post_init(context, /)Override this method to perform additional initialization after __init__ and model_construct.
model_rebuild(*[, force, raise_errors, ...])Try to rebuild the pydantic-core schema for the model.
model_validate(obj, *[, strict, extra, ...])Validate a pydantic model instance.
model_validate_json(json_data, *[, strict, ...])!!! abstract "Usage Documentation"
model_validate_strings(obj, *[, strict, ...])Validate the given object with string data against the Pydantic model.
Validate that naming order names match segment names.
Validate the custom_segments do not clash with existing segments.
parse_file(path, *[, content_type, ...])parse_obj(obj)parse_raw(b, *[, content_type, encoding, ...])save_yaml(path[, datetime_comment, ...])Write data from self to a YAML file.
schema([by_alias, ref_template])schema_json(*[, by_alias, ref_template])to_yaml()Convert attributes from self to YAML string.
update_forward_refs(**localns)validate(value)write_example(path_, /[, comment_])Write examples to a config file.
Attributes Documentation
- model_computed_fields = {}#
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_extra#
Get extra fields set during validation.
- Returns:
A dictionary of extra fields, or None if config.extra is not set to “allow”.
- model_fields = {'custom_segments': FieldInfo(annotation=list[Segment], required=False, default_factory=list), 'enum_segments': FieldInfo(annotation=list[SegmentsSuper], required=False, default_factory=list), 'naming_order': FieldInfo(annotation=list[str], required=True), 'subsets': FieldInfo(annotation=dict[str, list[int]], required=False, default_factory=dict)}#
- model_fields_set#
Returns the set of fields that have been explicitly set on this model instance.
- Returns:
- A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
- enum_segments: list[SegmentsSuper][source]#