Registry¶
The generic data-registry infrastructure that every ISO builds on. DataDefinition is a frozen dataclass holding file metadata (extension, directory name, prefix/suffix). DataRegistry is a generic class parameterized over a StrEnum data-type and a DataDefinition subclass, providing lookup methods and ordered-unique collection across registry entries.
Each ISO subclasses DataDefinition to add fields like reader_type, processed_bindings, and url_endpoint, and subclasses DataRegistry to populate its _registry class variable.
Classes¶
DataDefinition
dataclass
¶
DataDefinition(file_extension: str, dir_name: str, title: str = '', description: str = '', file_prefix: str = '', file_suffix: str = '')
Data definition for ISO data types and file mappings.
DataRegistry
¶
Generic base class for ISO data registries.
Functions¶
collect_ordered_unique
classmethod
¶
collect_ordered_unique(extractor: Callable[[T_DataType, T_Definition], Iterable[T_Collected]], data_types: Iterable[T_DataType] | None = None) -> tuple[T_Collected, ...]
Collect ordered unique values across registry definitions.